Skip to main content

A website that won't load

When a website won't load, the error message tells you which step failed. Work through the checks below in order: each one rules out a part of the chain from the visitor's browser to your hosting.

Start with what the browser says​

What you seeWhere to look
"This site can't be reached", DNS_PROBE_FINISHED_NXDOMAIN, ERR_NAME_NOT_RESOLVED or "server not found"The domain and DNS
"Connection timed out" or "refused to connect"The server
"Your connection is not private" or another certificate warningThe SSL certificate
An error page with a number, such as 403, 404, 500 or 503HTTP error codes
The old version of the site, or another site entirelyCaches and old records

Check whether it is only you​

  1. Open the site in a private browser window.
  2. Try another device, such as a phone on mobile data rather than your Wi-Fi.
  3. If the site works elsewhere, the problem is local: clear your browser cache, restart your router, and see Why DNS changes take time for how to clear your device's DNS cache.

If it fails everywhere, carry on with the checks below.

Check the domain and DNS​

Is the domain still registered and active? An expired domain stops working, usually with a DNS error. Check the expiry date in the account where you registered it, and look for renewal emails.

Does DNS point to the right place? Look up the domain's address and compare it with the one your hosting provider gave you:

dig +short example.com A
dig +short www.example.com
dig +short example.com NS

On Windows, use nslookup example.com instead.

  • No answer for the domain: the A record is missing, or the nameservers are wrong or not responding.
  • A different address from the one your host gave you: update the A record, or check whether the domain uses the nameservers you think it does.
  • www works but the domain does not, or the other way round: one of the two records is missing. See Connect a domain to a website.

If you changed DNS recently, the old answer may still be cached. That is normal until the old TTL passes.

Check the server​

If DNS gives the right address but the connection times out or is refused:

  • Check your hosting provider's status page or notices for an outage.
  • Check that your hosting account is active and not suspended, for example because of an unpaid invoice or a resource limit.
  • On a VPS or cloud server, check that the server is running, that the web server software is started, and that the firewall allows ports 80 (HTTP) and 443 (HTTPS).

Check the SSL certificate​

Click the warning details in the browser to see the reason. The most common causes are an expired certificate, a certificate that does not include this exact name (often www or a subdomain), and a missing intermediate certificate. SSL certificates explained has the fix for each.

Don't tell visitors to click through

Never ask visitors to ignore a certificate warning. Fix the certificate instead: the warning is there to protect them from impostor sites.

HTTP error codes​

If you see an error page, the server was reached and answered with a problem.

CodeWhat it meansThings to check
403 ForbiddenThe server refuses to show the pageFile and folder permissions, a missing index file, or a security rule blocking the request
404 Not FoundThe page does not exist at that addressThe link, recently changed addresses, or files uploaded to the wrong folder
500 Internal Server ErrorThe website's code or configuration failedThe site's error log, a recent plugin or theme update, or a mistake in .htaccess
502 Bad Gateway or 504 Gateway TimeoutA server in the chain did not get a valid or timely answerSlow or stuck website processes, or a server under heavy load
503 Service UnavailableThe server is temporarily unable to handle the requestMaintenance mode, resource limits or an overloaded server

After a 500 error, the quickest test is often to undo the last change: restore the previous version of a plugin, theme or configuration file, or restore a backup from before the change.

The old site still shows​

If you moved your site and still see the old one:

  • Wait for the old DNS TTL to pass, then check the address DNS returns.
  • Check your computer's hosts file for a line you added while testing, and remove it.
  • Clear your browser's cache, or try a private window.
  • If the site uses a caching or CDN service, clear its cache too.

Still stuck?​

Note down the exact error message, the address you tried, when it started and anything that changed shortly before. That information makes any support request much quicker to solve.

Did this article help you?