Error map
UPLOAD_ERR_INI_SIZE PHP upload error 1: The uploaded file exceeds the upload_max_filesize directive in php.ini
PHP · layer 4, Application & API
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)
Error: secretOrPrivateKey must have a value (jsonwebtoken sign)
jwt.sign() got an empty secret — the environment variable holding the JWT secret isn’t loaded.
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.
PHP mail() returns false / emails not delivered
PHP’s mail() function failed or emails never arrive (spam or rejected).
Upload error: File too large (LIMIT_FILE_SIZE / file exceeds maximum upload size)
The uploaded file is larger than the limit set by the API, framework or server.
Cloudflare Error 1000: DNS points to prohibited IP
A proxied DNS record points at a Cloudflare IP address, creating a loop.
MongoDB: MongoParseError: Invalid scheme, expected connection string to start with "mongodb://" or "mongodb+srv://"
The connection string is missing, malformed, or the environment variable holding it is undefined.
Laravel: No application encryption key has been specified.
Laravel’s APP_KEY is missing, so it can’t encrypt sessions and cookies.
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.
You must specify a region. You can also configure your region by running "aws configure" (NoRegionError)
No region is configured for the CLI/SDK call.
InvalidOperationException: The ConnectionString property has not been initialized
The database connection was opened with an empty connection string — the configuration key wasn’t found.
WordPress Media: “HTTP error.” when uploading images
The upload request failed on the server — memory or timeout during image processing, upload size limits, ModSecurity, or Imagick…
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…
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.
JWT Expired / Invalid Token
The JSON Web Token sent with the request is expired, malformed or signed with a different key, so the API rejects it (usually wit…
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…
Azure AD (Entra ID): AADSTS700016 Application not found in the directory
The client ID in your sign-in request doesn’t exist in the tenant you’re authenticating against.
HTTP 400 Bad Request
The server could not understand the request because its syntax, headers or body are malformed or invalid.
OAuth 2.0 Error: invalid_grant
The authorization code, refresh token or credentials sent to the token endpoint are invalid, expired, already used or were issued…
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.
API Error: Too many concurrent requests (concurrency limit reached)
You have more requests in flight at once than the API allows for your key — even if your requests-per-minute rate is fine.
Upload error: File type not allowed / unsupported file type
The upload was rejected because the file’s type — extension, MIME type or actual content — isn’t on the allowed list.
Upload error: checksum mismatch (BadDigest / Content-MD5 did not match / XAmzContentSHA256Mismatch)
The server computed a different checksum for the data it received than the one your client declared, so it rejected the upload as…
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.
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.
warning: in the working copy of 'x', LF will be replaced by CRLF the next time Git touches it
Git’s line-ending conversion (core.autocrlf) will change line endings in your working copy.
Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured.
Spring Boot found JDBC/JPA on the classpath but no database URL.
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.
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…
MySQL ERROR 1046 (3D000): No database selected
A query referenced tables without a database selected (no USE and no db in the connection).
MySQL ERROR 1049 (42000): Unknown database 'x'
The database named in the connection doesn’t exist on that server.
AWS: Unable to locate credentials / Could not load credentials from any providers
The AWS CLI/SDK found no credentials in any place it looks — env vars, profile files, SSO cache or an instance/task role.
MySQL ERROR 1153 (08S01): Got a packet bigger than 'max_allowed_packet' bytes
A single statement or row exceeded max_allowed_packet — big BLOBs, huge INSERTs or large dump lines.
TypeError [ERR_INVALID_ARG_TYPE]: The "path" argument must be of type string. Received undefined
A Node API got an argument of the wrong type — usually undefined because an env var or config value is missing.
npm update check failed — Try running with sudo or get access to the local update config store
npm’s update notifier couldn’t write its config — usually root-owned files in ~/.config from a past sudo npm.
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.
FATAL: database "x" does not exist
The connection names a database that isn’t on that server.
NotAllowedError: play() failed because the user didn't interact with the document first.
The browser blocked media autoplay with sound until the user interacts with the page.
S3 EntityTooLarge: Your proposed upload exceeds the maximum allowed size
A single PUT can be at most 5 GB (and presigned POST policies can set lower limits); larger files must use multipart upload.
HTTP 100 Continue
An interim response telling the client to go ahead and send the request body — normal when the client sent Expect: 100-continue.
PHP Fatal error: Maximum execution time of 30 seconds exceeded
The script ran longer than `max_execution_time` and PHP stopped it.
WordPress: There Has Been a Critical Error on This Website
A PHP fatal error (usually from a plugin or theme) stopped WordPress; the real error is in the debug log or recovery-mode email.
HTTP 417 Expectation Failed
The server or a proxy can’t meet the Expect header in the request — almost always Expect: 100-continue.
Map another error
Popular: 4035004000xC000007BTypeErrorCritical error404NullPointerException