The site moved but something is broken: what each symptom points to

After a move, each error almost always has one typical cause. Instead of redoing everything, read the symptom, go to the most likely cause and confirm it in the error log. Nearly every problem on a moved site comes from six places: the database connection, the PHP version, the .htaccess, the addresses stored in the database, the certificate and the e-mail.

First, look at the log

Reproduce the error and open the site’s error log: the last line usually names the file and the reason. See where the PHP error log is, how to read it, and the errors you will see most. If you cannot make sense of the message, the name of the error already steers you in the table below.

What you see Most likely cause Where to look
“Error establishing a database connection” The configuration file still has the name, user or password of the old database. Names carry the account name in front, so they change. rebuilding the wp-config.php connection
A blank page or a 500 error A different PHP version, a missing extension, or an .htaccess the new server will not accept. the PHP configuration and website errors explained
Text with question marks or swapped letters The database was imported with a different character set. character sets: utf8mb4, collation, and the question marks
Broken layout, images missing A folder was left behind (often the hidden one), or paths changed. Compare the folders on both sides.
Links lead to the old domain The addresses stored in the database were not updated. moving WordPress to a new domain without losing anything
The home page opens, inner pages give 404 The .htaccess is missing, or permalinks need re-saving. WordPress permalinks and the 404 that follows
It keeps going back to the login screen Cookies, or a site address different from the stored one. WordPress login redirect loop
Padlock with a warning Certificate not yet issued, or mixed content. no padlock on your site and mixed content
Error 403 File or folder permissions changed in the copy. error 403: permissions, .htaccess and blocked IPs
The old site keeps showing DNS cache, or a forgotten line in your computer’s hosts file. how long DNS changes take to propagate
E-mail stopped arriving The domain’s mail records still point to the old place, or the mailboxes were not recreated. why your e-mail is not sending or receiving

If it fits no row

1 Compare with the old one. If you still have it running, open the same address on both and look at the difference.
2 Switch off what is not essential. On WordPress, deactivate the plugins to see whether the site answers without them. See disabling plugins, including when you cannot get in.
3 Change one thing at a time and test after each change. With three changes at once you no longer know which one worked.
Do not delete the old site to “tidy up”. Until the problem is solved, the old one is your reference and your safety net.
Before you blame the new server, make sure you are testing the new server: a forgotten line in the hosts file, or the browser’s cache, makes it look as if nothing changed. See the hosts file. The first-day list is in after moving a site: the checklist for the first day.

Been through the table and it still fails? Send us the domain and the text of the error exactly as it appears.

Open a support ticket

SEE ALSO

Moving a site by hand: files by FTP and the database

Website errors explained: 500, 403, 404, 508 and what to do

Common WordPress errors: white screen, critical error and how to find the cause

After moving a site: the checklist for the first day

RECOMMENDED PRODUCT

Web hosting with cPanel

Domain and SSL included, daily backups and the panel you already know. from $6.60/mo (3-year plan, with coupon)

See plans
  • 0 Users Found This Useful
Was this answer helpful?