An error message is not fate: it is a sentence, and it almost always names the culprit. You just need to know who is speaking — the browser, the server, or your application.
Who is speaking
| Who | How to recognize it | What it implies |
|---|---|---|
| The browser | Message in the browser's language, in its dress | The request did not reach the server, or not in full |
| The server | A three-digit code, a plain page | The request arrived; the answer is a refusal or a failure |
| Your application | The message wears your site's dress | The server did its job; it is the site that failed |
The code table
| Code | What the server says | Most frequent cause | What you can do |
|---|---|---|---|
| 301 / 302 | It is no longer here, go there | An intended redirect | Nothing: it is not an error |
| 401 | Identify yourself | A password-protected area | Check the credentials |
| 403 | I refuse | File permissions, or a folder without an index page | Check the permissions and the index file |
| 404 | I do not have that page | Dead link, changed address, missing file | Check the address, then the internal links |
| 429 | Too many requests | A robot, a looping script, an attack | Report it, and look at who is calling |
| 500 | My application failed | Extension, update, code error | Undo the last change, read the log |
| 502 / 504 | I got no answer in time | A page taking too long to build | Lighten the page, report it if it persists |
| 503 | I am unavailable | Maintenance, or a momentary overload | Retry, then report it if it lasts |
The messages that carry no code
- Entirely blank page — the application stopped while hiding its error. The site's log says more in one line than the page in an hour.
- "Database connection error" — the site can no longer reach its database: credentials changed in the configuration file, or the database is missing.
- "Server not found" / "This site can't be reached" — the domain name leads nowhere. Nothing to do with the site's content.
- "Your connection is not private" — the certificate is missing, does not cover this address, or your machine's clock is off.
The error log
If your application keeps a log, it says in one line what a blank page hides entirely: the offending file and the line number. It is the first place to look for any 500 error.
If you do not know where to find it for your hosting, ask us in a ticket: we will give you the exact path for your service.
Never leave error display enabled on a live site. A detailed error message shows the public file paths and sometimes credentials. It belongs in the log, not on the page.
What to send us
The code, the exact address of the page, the time, and the log line if you have it. With those four elements, an incident is handled in one reply.