Error map
PHP file downloads instead of running (Nginx) Browser downloads index.php instead of rendering — Nginx has no fastcgi PHP location
Nginx / Apache · layer 3, Edge & web server
Centre: this error. First ring: errors it is linked with (12). Outer ring: what those are linked with. Colours show the layer of a request each error belongs to. Click any dot to re-centre the map on it; hover to follow its connections. The centre dot opens the error page.
Directly related (12)
Nginx: nginx: [emerg] unknown directive "x" in /etc/nginx/sites-enabled/x:12 — configuration file test failed
Nginx found a directive it doesn’t know — a typo, a missing semicolon on the previous line, a directive from a module that isn’t…
FastCGI sent in stderr: "Primary script unknown"
Nginx passed a script path to PHP-FPM that PHP-FPM couldn’t find — usually a wrong SCRIPT_FILENAME or root.
perl: warning: Setting locale failed / bash: warning: setlocale: LC_ALL: cannot change locale
Your session asks for a locale (often forwarded by SSH from your Mac/PC) that isn’t generated on the server.
PHP mail() returns false / emails not delivered
PHP’s mail() function failed or emails never arrive (spam or rejected).
PHP still runs old code after deploy (OPcache not reset)
OPcache keeps serving cached bytecode, so changes uploaded to the server don’t take effect.
WordPress: Error Establishing a Database Connection
WordPress can’t connect to its MySQL/MariaDB database with the credentials in wp-config.php, or the database server is down.
Cloudflare Error 1000: DNS points to prohibited IP
A proxied DNS record points at a Cloudflare IP address, creating a loop.
Laravel: No application encryption key has been specified.
Laravel’s APP_KEY is missing, so it can’t encrypt sessions and cookies.
Warning: Unknown: Input variables exceeded 1000. To increase the limit change max_input_vars in php.ini.
The form submitted more fields than PHP’s max_input_vars allows; extra fields were silently dropped.
sudo: unable to resolve host <hostname>: Name or service not known
The machine’s hostname isn’t in /etc/hosts (or DNS), so sudo prints this warning — usually after changing the hostname.
Cloudflare Error 1001: DNS resolution error
Cloudflare received the request but the hostname isn’t set up on Cloudflare (or the domain was just added and not active yet).
Cloudflare Error 1002: DNS points to Prohibited IP / Restricted
A record points to a private, reserved or Cloudflare IP that Cloudflare won’t proxy to.
Two steps away (36)
HTTP 413 Content Too Large (Request Entity Too Large)
The request body is bigger than the server is willing to accept — usually a file upload over the configured limit.
OAuth Error: redirect_uri_mismatch
The redirect URI in your OAuth request doesn’t exactly match one registered for the client in the provider’s console.
Kubernetes: CreateContainerConfigError — secret / configmap not found
Kubernetes can’t build the container’s configuration — usually a referenced Secret, ConfigMap or key doesn’t exist in that namesp…
HTTP 403 Forbidden
The server understood the request but refuses to authorize it — you (or the server process) are not allowed to access this resour…
HTTP 404 Not Found
The server can’t find anything at the requested URL.
HTTP 502 Bad Gateway
A proxy or gateway (Nginx, load balancer, CDN) got an invalid response — or no response — from the upstream server behind it.
bash: command not found
The shell can’t find an executable with that name in any directory on your PATH.
ssh: connect to host x port 22: Connection refused
The server answered, but nothing is listening on the SSH port — sshd isn’t running, it uses another port, or a firewall actively…
ssh: connect to host x port 22: Connection timed out
SSH packets get no reply — a firewall/security group drops them, the server is off, or the IP is wrong.
hint: You have divergent branches and need to specify how to reconcile them.
Git 2.27+ asks you to choose merge, rebase or fast-forward-only when local and remote both have new commits.
error: gpg failed to sign the data — fatal: failed to write commit object
Commit signing is enabled but GPG couldn’t sign — no TTY for the passphrase, wrong key, or agent not running.
Warning: file_exists(): open_basedir restriction in effect. File(/x) is not within the allowed path(s)
PHP is configured to access only certain directories, and the script tried to touch a file outside them.
Azure App Service: ":( Application Error" / container didn’t respond to HTTP pings
App Service started your app but it crashed or never listened on the expected port.
Could not load file or assembly 'X, Version=…' or one of its dependencies
The runtime couldn’t find or load a referenced DLL — missing from the output, wrong version, or wrong platform (x86/x64).
SyntaxError: Unexpected token '<' (HTML served instead of JavaScript)
The browser loaded a .js file but received HTML (an error page or the SPA index.html).
MySQL ERROR 1045 (28000): Access denied for user
MySQL rejected the login — wrong password, wrong user/host combination, or the user doesn’t exist.
MySQL ERROR 2002 (HY000): Can't connect to local MySQL server through socket
The client couldn’t reach the MySQL server — it isn’t running, or the client is looking for the socket/port in the wrong place.
HTTP 500 Internal Server Error
The server hit an unexpected condition — usually an unhandled exception or misconfiguration in the application.
Error: getaddrinfo ENOTFOUND host / Name or service not known
DNS lookup for the hostname failed — the name is wrong, doesn’t exist, or this machine can’t resolve it.
fatal: unable to access 'https://github.com/…': Could not resolve host: github.com
DNS lookup for the Git host failed from this machine.
Author identity unknown *** Please tell me who you are.
Git doesn’t know your name and email for commits.
Laravel: 419 Page Expired (CSRF token mismatch)
Laravel rejected a POST because the CSRF token was missing, expired or didn’t match the session.
Laravel: Target class [App\Http\Controllers\X] does not exist.
Laravel’s container couldn’t find the controller or class named in a route or binding.
Laravel: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'db.sessions' doesn't exist
Laravel queried a table that hasn’t been created — usually sessions, cache, jobs or a new model’s table.
WordPress: The link you followed has expired
Usually an upload (theme, plugin, media) larger than PHP’s upload/post limits — WordPress receives an empty request and shows thi…
PHP upload error 1: The uploaded file exceeds the upload_max_filesize directive in php.ini
The uploaded file is bigger than PHP’s upload_max_filesize, so PHP discarded it.
API Error: Invalid or unsupported API version
The API version you requested — in the URL, a header or the SDK config — doesn’t exist or has been retired.
user is not in the sudoers file. This incident will be reported.
Your account isn’t allowed to use sudo.
API Error: Feature not enabled for this account (feature_not_enabled / not available on your plan)
The endpoint or option exists, but your account, plan, region or project hasn’t been granted access to it.
API Error: a similar object exists in test mode, but a live mode key was used
You’re using an ID, key or URL from one environment (test/sandbox) with credentials from another (live/production), or vice versa.
java.net.UnknownHostException: api.example.com
DNS resolution failed for the hostname.
net::ERR_NAME_NOT_RESOLVED (This site can't be reached — server IP address could not be found)
DNS couldn’t resolve the hostname in the browser.
npm ERR! code ENOTFOUND — request to https://registry.npmjs.org/x failed, reason: getaddrinfo ENOTFOUND registry.npmjs.org
npm couldn’t resolve the registry hostname.
cURL error 6: Could not resolve host: api.example.com
PHP cURL couldn’t resolve the hostname via DNS.
ACM certificate stuck in Pending validation
ACM is waiting to see the DNS (or email) validation record — it wasn’t created, was created in the wrong DNS zone, or has a typo.
DNS not working inside a Kubernetes pod (could not resolve host / nslookup: can't resolve)
Pods can’t resolve service names or external hosts — CoreDNS is down, blocked by NetworkPolicy, or the upstream resolver fails.
Map another error
Popular: 500403400ORA-009331064Critical errorFileNotFoundException assemblyTypeError