500 Internal Server ErrorWhat 500 Internal Server Error means
500 is the catch-all failure code defined for cases where the server hit an unexpected condition and could not complete the request: an unhandled exception, a crashed worker, a misconfiguration, or a dead dependency such as a database. By definition the failure happened on the server — the response is deliberately generic so internal details do not leak to clients.
The useful diagnostic question is scope. If every page 500s, the site or a shared dependency is down. If one endpoint 500s for everyone, that endpoint has a bug. If a URL works in a browser but 500s for your client, something about your specific request — headers, cookies, body encoding, or session state — is pushing execution into a failing path.
One more possibility matters for scraping operators: some sites return 5xx codes to traffic they have classified as automated, disguising a block as a fault. A 500 that arrives instantly, with a generic body, and only for your automated requests deserves suspicion — the fix for that is entirely different from waiting out a real outage.