500Internal Server Error
500 Internal Server Error means the server encountered an unexpected condition that prevented it from fulfilling the request. It is the generic catch-all for server-side bugs and misconfiguration.

What does it mean?
Use 500 when you do not have a more specific code. A database error, an unhandled exception, or a broken template can all end here.
Do not put stack traces or internal paths in the response. Log them with a request ID and show the user a safe error page.
When does it happen?
- An unhandled exception in application code.
- A database or dependency fails mid-request.
- A configuration or deployment error.
- A template or serialization error.
How do you fix it?
If you run the server
- Log the error with a request ID and correlate it with the client's report.
- Return a safe error page; never expose stack traces.
- Use 502 or 504 for gateway and upstream failures; use 503 for maintenance or overload.
If you are just visiting
- Retry once. If it persists, the site is broken; come back later.
- If you can, send the site owner the time and the URL.