Inventory Your Records
Before you change anything, export the current zone from your DNS provider or read it back:Lower the TTL First
At least 24 hours before cutover, set the TTL on the records you plan to change to 300 seconds. Resolvers cache the old value for the length of the old TTL, so this step has to happen before, not during, the switch.Configure the Web Server
Recreate the site config on the Arct Cloud server.nginx
nginx
Apache
Apache
Handle TLS Certificates
Issue the certificate before the DNS change so there is no gap where the site answers on HTTP only. Copy the existing Let’s Encrypt state from the source server:HTTP-01 validation requires DNS to already resolve to the server being validated. To issue a fresh certificate before cutover, use DNS-01 validation instead.
Verify Before You Switch
Point your own machine at the new server with a local hosts file entry,/etc/hosts on Linux and macOS or C:\Windows\System32\drivers\etc\hosts on Windows:
- The homepage and two or three deep pages load
- Sign-in works and sessions persist
- A form submission writes to the database
- Uploads and media resolve
- HTTPS shows a valid certificate
- Redirects, including apex to
wwwor the reverse, still fire
Cut Over
1
Freeze the Source
Put the site into maintenance mode so no new orders, posts, or uploads land on the old server.
2
Run a Final Sync
Copy files and re-import the database one last time.
3
Update the A and AAAA Records
Change them to the new server IP at your DNS provider. With a 300 second TTL, most resolvers pick up the change within five minutes.
4
Confirm Propagation
5
Restore the TTL
Set the TTL back to 3600 seconds or your usual value once traffic has moved.
6
Keep the Source Running
Leave the old server up for a few days. Stragglers on cached DNS will still reach it, and you keep a rollback path. Before deleting it, run the checks before you delete it.
Troubleshooting
Some visitors still land on the old server
Some visitors still land on the old server
Their resolver cached the record before you lowered the TTL. It clears on its own. Leaving the source server running in maintenance mode avoids errors during the tail.
The browser shows a certificate warning
The browser shows a certificate warning
The certificate covers a name the request did not use, or certbot wrote its config after the last reload. Check with
sudo certbot certificates, then reload the web server.Mail stopped after the move
Mail stopped after the move
An
MX or SPF record was changed along with the site records. Restore them to their previous values, then confirm with dig example.com MX +short and dig example.com TXT +short.The site loads but images and CSS are missing
The site loads but images and CSS are missing
Absolute URLs in the database or config still reference the old host or an old path. Search the database for the old domain and update it.
Mixed content warnings on HTTPS
Mixed content warnings on HTTPS
The site config still generates
http:// URLs. Update the site URL setting and add a redirect from HTTP to HTTPS in the web server config.