Skip to content

Fix "Connection timed out" (site won't load at all)

“Connection timed out” / ERR_CONNECTION_TIMED_OUT means the browser couldn’t even reach your server — the request got no answer at all. This is different from a 500 or 502, where the server did respond with an error. Something between the visitor and your server is the problem.

Work outward, in this order

1. Does the name resolve?

Terminal window
dig +short yourdomain.com

Blank or wrong IP → it’s DNS, not the server → domain won’t resolve.

2. Is the server reachable at all? From your machine:

Terminal window
ping yourserver.ip
curl -sS -m 10 http://yourserver.ip # try the raw IP

No response to either → network/firewall level, not the app.

3. Is the right port open? A timeout on 80/443 while SSH works often means the firewall is blocking web ports. Make sure 80 and 443 are allowed. A misconfigured firewall (or one enabled without opening web ports) is a classic cause.

4. Is the web server running? If the server is reachable but the web port times out, nginx may be down. Check services and restart nginx.

5. Provider firewall / security group. Cloud providers have their own firewall (AWS Security Groups, etc.) in addition to the server’s. Both must allow 80/443. A timeout right after launching a new server is very often the provider’s security group.

The quick mental model

Works?Points to
dig wrongDNS
ping/IP failsnetwork / provider firewall / server down
SSH ok but 80/443 time outfirewall ports or nginx down
IP works but domain doesn’tDNS

Fix the outermost failing layer first, then retest.


Running OrbixPanel? The built-in firewall makes it easy to confirm 80/443 are open. OrbixPanel.com → — the free, self-hosted, AI-powered hosting control panel.