When you’re ready to deploy a site on your production domain, there are several steps you must take.
Change site address
If you’re running a cluster, the WordPress Site Address (URL ) addon will allow you to easily make global changes to the URL of your site. Simply click the “Site URL” button and input the new site address:
For single-node WP installs, changing the site URL is currently a manual process that will be replaced with an addon in the future.
First SSH into the node and enter the /var/www/webroot/ROOT directory.
Then run the following command (with the relevant domains with your staging/production domain):
wp search-replace "stagingdomain.mightybox.site" "productiondomain.com" --skip-columns=guid --all-tables --precise
At this point you can, if you wish, update the hosts file on your local computer to test the connection to the site and make sure that it works properly (you’ll receive SSL errors but the site should otherwise work normally).
Next, you’ll update your domain’s DNS records to connect it to the environment.
For clusters with load balancers, you’ll add two (or more, if you have more than two load balancers) A records, one to point to the public IPv4 of each of the load balancers:
For single-node WP installs, your environment will have a single IPv4 at the App Server layer that you’ll use in your A records:
Authorize SSL certificate
With traffic pointed to your environment, you can now authorize the SSL certificates. This is accomplished via the Let’s Encrypt Free SSL addon:
For clusters, you’ll need to authorize the SSL at the load balancer layer. For single-node WP installs, this addon will be activated at the app server layer.
The addon will likely already be installed, you just need to choose Configure and update the site with your new domains. You’ll add both domain.com and www.domain.com:
Note that it’s advisable to keep the staging domain activated on the SSL certificate. This will ensure that you can still access the environment should there be issues with the production domain.
What about domain binding?
In environment settings -> Custom Domains you may have noticed the Domain Binding setting. This is only used when you need to route traffic to your environment without a public IP being assigned. In general, it should only be used for testing/demo purposes. Production sites should always have a public IP assigned for best performance.