Error map

HTTP error (media upload) WordPress Media: “HTTP error.” when uploading images

WordPress · layer 4, Application & API

Open the full error page →

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.

HTTP error (media upload) — WordPress Media: “HTTP error.” when uploading images (WordPress)HTTP error …LIMIT_FILE_SIZE — Upload error: File too large (LIMIT_FILE_SIZE / file exceeds maximum upload size) (API)LIMIT_FILE_SIZE413 (Cloudflare 100 MB) — Cloudflare 413 Request Entity Too Large (upload over the plan limit) (Cloudflare)413 (Cloudflare 100…file type is not permitted — WordPress: Sorry, you are not allowed to upload this file type / Sorry, this file type is not permitted for security reasons (WordPress)file type is not pe…file_type_not_allowed — Upload error: File type not allowed / unsupported file type (API)file_type_not_allow…100 — HTTP 100 Continue (HTTP)100BadDigest — Upload error: checksum mismatch (BadDigest / Content-MD5 did not match / XAmzContentSHA256Mismatch) (API)BadDigest417 — HTTP 417 Expectation Failed (HTTP)417Link expired — WordPress: The link you followed has expired (WordPress)Link expiredautoplay blocked — NotAllowedError: play() failed because the user didn't interact with the document first. (JavaScript)autoplay blockedEntityTooLarge — S3 EntityTooLarge: Your proposed upload exceeds the maximum allowed size (AWS)EntityTooLargeUnable to create directory — WordPress: Unable to create directory wp-content/uploads/2026/10. Is its parent directory writable by the server? (WordPress)Unable to create di…The uploaded file could not be moved to — WordPress: The uploaded file could not be moved to wp-content/uploads/2026/10 (WordPress)The uploaded file c…413 — HTTP 413 Content Too Large (Request Entity Too Large) (HTTP)413UPLOAD_ERR_INI_SIZE — PHP upload error 1: The uploaded file exceeds the upload_max_filesize directive in php.ini (PHP)UPLOAD_ERR_INI_SIZEconcurrent_requests_limit — API Error: Too many concurrent requests (concurrency limit reached) (API)concurrent_requests…EMFILE — Too many open files (EMFILE) (Linux)EMFILERequestEntityTooLargeException — Lambda: Request must be smaller than 6291456 bytes for the InvokeFunction operation (RequestEntityTooLargeException) (AWS)RequestEntityTooLar…Unzipped size must be smaller than 262144000 bytes — Lambda: Unzipped size must be smaller than 262144000 bytes (AWS)Unzipped size must …403 Forbidden wp-admin — WordPress: 403 Forbidden on wp-admin, wp-login.php or admin-ajax.php (WordPress)403 Forbidden wp-ad…Are you sure you want to do this? — WordPress: Are you sure you want to do this? Please try again. (nonce check failed) (WordPress)Are you sure you wa…Post-processing of the image failed — WordPress: Post-processing of the image failed likely because the server is busy or does not have enough resources (WordPress)Post-processing of …415 — HTTP 415 Unsupported Media Type (HTTP)415Not allowed — WordPress: Sorry, you are not allowed to access this page. (WordPress)Not allowedinvalid_type — API Error: Invalid type — expected integer, received string (API)invalid_typeHeaders already sent — Warning: Cannot modify header information - headers already sent (PHP)Headers already sentCORS — CORS Error: No 'Access-Control-Allow-Origin' header is present (API)CORS411 — HTTP 411 Length Required (HTTP)411EINTEGRITY — npm ERR! code EINTEGRITY — sha512 integrity checksum failed (npm)EINTEGRITYjob not found — API Error: Job / operation not found or expired (async task ID unknown) (API)job not foundFailed to find a valid digest in the 'integrity' attribute — Console: Failed to find a valid digest in the 'integrity' attribute for resource … with computed SHA-256 integrity (Browser)Failed to find a va…400 — HTTP 400 Bad Request (HTTP)400407 — HTTP 407 Proxy Authentication Required (HTTP)407428 — HTTP 428 Precondition Required (HTTP)428Maximum execution time — PHP Fatal error: Maximum execution time of 30 seconds exceeded (PHP)Maximum execution t…Critical error — WordPress: There Has Been a Critical Error on This Website (WordPress)Critical errormax_input_vars — Warning: Unknown: Input variables exceeded 1000. To increase the limit change max_input_vars in php.ini. (PHP)max_input_varsERR_BLOCKED_BY_CLIENT — net::ERR_BLOCKED_BY_CLIENT (JavaScript)ERR_BLOCKED_BY_CLIE…ERR_CONNECTION_REFUSED — net::ERR_CONNECTION_REFUSED (This site can't be reached — refused to connect) (JavaScript)ERR_CONNECTION_REFU…ERR_NAME_NOT_RESOLVED — net::ERR_NAME_NOT_RESOLVED (This site can't be reached — server IP address could not be found) (JavaScript)ERR_NAME_NOT_RESOLV…AccessDenied — AWS S3: AccessDenied (403) when calling GetObject / PutObject (AWS)AccessDeniedNoSuchKey — AWS S3: NoSuchKey / NoSuchBucket — The specified key/bucket does not exist (AWS)NoSuchKeyBucketAlreadyExists — BucketAlreadyExists: The requested bucket name is not available (AWS)BucketAlreadyExistsEACCES — Linux: Permission denied (Linux)EACCESInstallation failed: Could not create directory — WordPress: Installation failed: Could not create directory (plugin/theme install or update) (WordPress)Installation failed…Please enter your FTP credentials — To perform the requested action, WordPress needs to access your web server. Please enter your FTP credentials to proceed (WordPress)Please enter your F…

Directly related (12)

LIMIT_FILE_SIZEAPI

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.

413 (Cloudflare 100 MB)Cloudflare

Cloudflare 413 Request Entity Too Large (upload over the plan limit)

The request body is larger than Cloudflare allows through the proxy — 100 MB on Free/Pro, 200 MB Business, 500 MB Enterprise defa…

file type is not permittedWordPress

WordPress: Sorry, you are not allowed to upload this file type / Sorry, this file type is not permitted for security reasons

WordPress blocked the upload because the file extension/MIME type isn’t in its allowed list (SVG, JSON, WEBP on old versions, fon…

file_type_not_allowedAPI

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.

100HTTP

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.

BadDigestAPI

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…

417HTTP

HTTP 417 Expectation Failed

The server or a proxy can’t meet the Expect header in the request — almost always Expect: 100-continue.

Link expiredWordPress

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…

autoplay blockedJavaScript

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.

EntityTooLargeAWS

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.

Unable to create directoryWordPress

WordPress: Unable to create directory wp-content/uploads/2026/10. Is its parent directory writable by the server?

PHP can’t write to wp-content/uploads — wrong ownership/permissions, a wrong upload path, full disk, or open_basedir restrictions.

The uploaded file could not be moved toWordPress

WordPress: The uploaded file could not be moved to wp-content/uploads/2026/10

PHP received the upload but couldn’t move it from the temp directory into uploads — permissions, disk space, or open_basedir/temp…

Two steps away (33)

413HTTP

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.

UPLOAD_ERR_INI_SIZEPHP

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.

concurrent_requests_limitAPI

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.

EMFILELinux

Too many open files (EMFILE)

The process hit its file-descriptor limit — sockets, files and pipes all count.

RequestEntityTooLargeExceptionAWS

Lambda: Request must be smaller than 6291456 bytes for the InvokeFunction operation (RequestEntityTooLargeException)

The event payload (or response) is over Lambda’s 6 MB synchronous limit (256 KB for async invocations).

Unzipped size must be smaller than 262144000 bytesAWS

Lambda: Unzipped size must be smaller than 262144000 bytes

The function code plus layers exceed Lambda’s 250 MB unzipped limit for zip deployments.

403 Forbidden wp-adminWordPress

WordPress: 403 Forbidden on wp-admin, wp-login.php or admin-ajax.php

The server or a security layer refused access to WordPress admin URLs — file permissions, a security plugin/WAF rule, ModSecurity…

Are you sure you want to do this?WordPress

WordPress: Are you sure you want to do this? Please try again. (nonce check failed)

A WordPress security nonce didn’t validate — the page was open too long, cached, or a plugin/theme form is broken.

Post-processing of the image failedWordPress

WordPress: Post-processing of the image failed likely because the server is busy or does not have enough resources

The image uploaded but WordPress couldn’t generate its resized versions — memory/CPU limits or Imagick problems.

415HTTP

HTTP 415 Unsupported Media Type

The server refuses the request because the body’s Content-Type isn’t one it accepts.

Not allowedWordPress

WordPress: Sorry, you are not allowed to access this page.

Your user role lacks the capability for that admin screen — or the database table prefix / user capabilities are out of sync afte…

invalid_typeAPI

API Error: Invalid type — expected integer, received string

A request field has the wrong data type — a string where the API expects a number, a number where it expects a boolean, an object…

Headers already sentPHP

Warning: Cannot modify header information - headers already sent

You called `header()`, `setcookie()` or `session_start()` after output had already been sent to the browser.

CORSAPI

CORS Error: No 'Access-Control-Allow-Origin' header is present

The browser blocked a cross-origin request because the server’s response didn’t include the CORS headers allowing your site’s ori…

411HTTP

HTTP 411 Length Required

The server refuses a request with a body but no Content-Length header.

EINTEGRITYnpm

npm ERR! code EINTEGRITY — sha512 integrity checksum failed

A downloaded package’s hash doesn’t match the integrity value in package-lock.json — a corrupted cache, a changed tarball, or a l…

job not foundAPI

API Error: Job / operation not found or expired (async task ID unknown)

The status URL or job ID for an asynchronous operation (export, import, render, batch) doesn’t exist any more, or never existed.

Failed to find a valid digest in the 'integrity' attributeBrowser

Console: Failed to find a valid digest in the 'integrity' attribute for resource … with computed SHA-256 integrity

A `` or `` with an `integrity` hash was blocked because the downloaded file does not match that hash.

400HTTP

HTTP 400 Bad Request

The server could not understand the request because its syntax, headers or body are malformed or invalid.

407HTTP

HTTP 407 Proxy Authentication Required

A proxy between you and the server requires credentials before it will forward your request.

428HTTP

HTTP 428 Precondition Required

The server requires a conditional request (If-Match / If-Unmodified-Since) to prevent lost updates, and you didn’t send one.

Maximum execution timePHP

PHP Fatal error: Maximum execution time of 30 seconds exceeded

The script ran longer than `max_execution_time` and PHP stopped it.

Critical errorWordPress

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.

max_input_varsPHP

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.

ERR_BLOCKED_BY_CLIENTJavaScript

net::ERR_BLOCKED_BY_CLIENT

A browser extension (ad blocker, privacy tool) blocked the request.

ERR_CONNECTION_REFUSEDJavaScript

net::ERR_CONNECTION_REFUSED (This site can't be reached — refused to connect)

The browser reached the host but nothing was listening on that port.

ERR_NAME_NOT_RESOLVEDJavaScript

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.

AccessDeniedAWS

AWS S3: AccessDenied (403) when calling GetObject / PutObject

An IAM policy, bucket policy, ACL/ownership setting, Block Public Access or KMS key policy denied the S3 request.

NoSuchKeyAWS

AWS S3: NoSuchKey / NoSuchBucket — The specified key/bucket does not exist

S3 found no object at that key (or no bucket with that name in the region/account you’re calling).

BucketAlreadyExistsAWS

BucketAlreadyExists: The requested bucket name is not available

S3 bucket names are global across all AWS accounts, and someone else already uses this one.

EACCESLinux

Linux: Permission denied

Your user (or the service user) lacks read/write/execute permission on a file, directory or one of its parents.

Installation failed: Could not create directoryWordPress

WordPress: Installation failed: Could not create directory (plugin/theme install or update)

WordPress can’t write to wp-content/plugins, themes or upgrade — ownership/permissions or disk space.

Please enter your FTP credentialsWordPress

To perform the requested action, WordPress needs to access your web server. Please enter your FTP credentials to proceed

WordPress can’t write directly to its files (ownership differs from the PHP user), so it falls back to asking for FTP details.