⚖️ Error comparisons
Errors that look alike but need different fixes.
400 vs 422: Bad Request vs Unprocessable Content
400 means the request couldn’t be parsed or is structurally invalid. 422 means it parsed fine but the data fails valida…
401 vs 403: Unauthorized vs Forbidden
Both mean “you can’t have this”, but for different reasons. 401 says the server doesn’t know who you are; 403 says it k…
404 vs 410: Not Found vs Gone
404 means nothing is at this URL (maybe temporarily, maybe never). 410 means something was here and was removed on purp…
500 vs 502: Internal Server Error vs Bad Gateway
A 500 comes from the application itself failing. A 502 comes from a proxy (Nginx, load balancer, CDN) that couldn’t get…
502 vs 504: Bad Gateway vs Gateway Timeout
Both come from a proxy. 502 means the upstream gave a bad (or no) response; 504 means the upstream was too slow and the…
Authentication vs Authorization
Authentication verifies identity (who you are). Authorization decides permissions (what you can do). Errors in each lay…
MySQL 1045 vs 2002: Access Denied vs Can’t Connect
2002 means the client never reached the MySQL server. 1045 means it reached the server, and the server rejected the log…