Simplifying WordPress Installation with Domain Propagation Check

Current Issue: Users often purchase a hosting service and domain, then immediately try to install WordPress with HTTPS (the pre selected option). Due to zone updates typically taking up to an hour, this results in a failed installation and an error message from Let’s Encrypt. This technical error message confuses users, leading them to repeat the process and eventually become rate-limited by Let’s Encrypt, creating a negative user experience.

Suggestion for Improvement: Introduce a domain propagation status check as part of the WordPress installation process to enhance the user experience:

  1. User-Friendly Notification: When a user attempts to install WordPress, implement a system check for domain propagation. If the domain is not fully propagated (dig not responding with nameservers or a record), display a clear, understandable message advising them to wait, such as “Your new domain isn’t ready yet, it can take a little while. Please wait about 1-2 hours before installing WordPress with HTTPS.”
  2. HTTP Installation Option: Offer to proceed with the WordPress installation using HTTP as a temporary solution, with a straightforward option to upgrade to HTTPS later. This can be communicated as “You can start with a basic setup now and easily switch to a secure setup later.”
  3. Disabled SSL Option: If the domain has not propagated, disable the ‘Enable SSL’ option to prevent the user from choosing a setup that will fail. The option can be grayed out with a tooltip or message explaining why it’s temporarily unavailable.

These changes will guide users through the installation process more smoothly, reduce frustration, and prevent unnecessary support requests due to installation errors.

I must reiterate that this isn’t a one-time thing but something that has occurred 50+ times often resulting in tickets and the need for me to tell them to wait via email before reattempting to install wordpress again.

As someone who knows what’s going on, I have spent some time frustrated by the way this works too. I am in the process of migrating sites from another server, and in the interest of minimizing downtime I’d like to copy files and verify WordPress configuration before changing the public DNS records. Of course, Lets Encrypt won’t issue a certificate before the DNS is updated, but I’d still like ApisCP to install WordPress, even if it doesn’t have a valid certificate yet.

My issues might be part of a larger workflow of migrating a site rather than installing a new site. There might be other ways to avoid what I’m running into. However, I do like this idea of addressing these failures with installing a new WordPress app.

Another possible solution, perhaps? Instead of WordPress failing to install, what if it installs with a warning? “WordPress is installed, but an SSL certificate could not be installed. Please verify DNS records and SSL certificate status before using SSL with your site."

Disable SSL at install, then enable SSL once SSL is able to be ported over. This may be done via Web > Web Apps > select site > Options > Enable SSL.

Once enabled, SSL will be requested for the site. Following completion, URLs will be rewritten from http:// to https://. Difficulty in doing this before SSL is established is that WordPress generates canonical URLs with schema; if SSL is expected then URLs will be saved as https://.