ERRORS · 53 ENTRIESallwpcare.com/errors/
Error database

Find the error. Fix it.

Search by the exact message WordPress shows you. Each page lists the likely causes and the fixes in the order to try them.

The whole site is down or broken

Visitors see a blank page, a generic message or nothing at all.

403 Forbidden in WordPress

Forbidden You don't have permission to access this resource.

The server refused the request. On Apache, read the error log: the AH code names the cause, a deny rule in .htaccess or a file permission. Then fix that one.

WordPress 7.1 (tested on Apache 2.4) · PHP 7.4+

500 Internal Server Error in WordPress

Internal Server Error The server encountered an internal error or misconfiguration and was unable to complete your request.

The web server failed before WordPress could answer. Read the server error log, then check .htaccess, file permissions, PHP settings and the PHP handler.

WordPress 7.1 (tested on Apache) · PHP 7.4+

502 Bad Gateway in WordPress

502 Bad Gateway

A 502 means nginx got no usable answer from PHP. Read its error log line, then restart PHP-FPM or fix its socket, header buffer or timeout.

WordPress 7.1 (tested on nginx 1.31 with PHP-FPM 8.3 and on Apache 2.4 with PHP-FPM) · PHP 7.4+

504 Gateway Time-out in WordPress

504 Gateway Time-out (nginx) / Gateway Timeout (Apache)

The server in front of PHP gave up waiting. Read its error log, raise fastcgi_read_timeout or ProxyTimeout for the slow page, or make the slow job shorter.

WordPress 7.1 (tested on nginx with PHP-FPM, and Apache with PHP-FPM) · PHP 7.4+

Briefly Unavailable for Scheduled Maintenance

Briefly unavailable for scheduled maintenance. Check back in a minute.

Your site is stuck on this message after an update. Delete the .maintenance file in the WordPress root, or run wp maintenance-mode deactivate.

WordPress 7.1 (tested) · PHP 7.4+

ERR_TOO_MANY_REDIRECTS in WordPress

This page isn't working example.com redirected you too many times. ERR_TOO_MANY_REDIRECTS

Two layers keep sending the browser to each other. Trace the redirect chain with curl, then fix the site address, the HTTPS header from your proxy, or a plugin.

WordPress 7.1 (tested) · PHP 7.4+

Error Establishing a Database Connection

Error establishing a database connection

WordPress cannot reach its database. Check the credentials in wp-config.php, the database host, the server, and table health, in that order.

WordPress 7.1 (tested) · PHP 7.4+ · MySQL or MariaDB

There Has Been a Critical Error on This Website

There has been a critical error on this website. Learn more about troubleshooting WordPress.

A PHP fatal error stopped WordPress. Find the plugin or theme behind it with recovery mode or the error log, then turn it off over SFTP or WP-CLI.

WordPress 7.1 (tested) · PHP 7.4+

WordPress Database Error: Table Doesn't Exist

WordPress database error Table 'dbname.wp_postmeta' doesn't exist for query SELECT post_id, meta_key, meta_value FROM wp_postmeta WHERE post_id IN (1) ORDER BY meta_id ASC

WordPress asked for a table that is not in the database. Compare the prefix in wp-config.php with the real table names, then restore the table or fix the name.

WordPress 7.1 (tested) · PHP 7.4+ · MySQL or MariaDB

WordPress White Screen of Death

A blank white page with no message

A blank page with no message means PHP failed where WordPress could not report it. Check the status code, turn on the debug log, and read the last fatal line.

WordPress 7.1 (tested) · PHP 7.4+

Your PHP Installation Appears to Be Missing the MySQL Extension

Your PHP installation appears to be missing the MySQL extension which is required by WordPress.

PHP on your server has no mysqli extension, so WordPress stops before it reaches the database. Turn mysqli on, restart PHP, and check the web copy of PHP.

WordPress 7.1 (tested) · PHP 7.4+ · MySQL or MariaDB

A PHP error message on screen

WordPress prints the technical message, with a file name and line number.

Cannot Modify Header Information: Headers Already Sent

Warning: Cannot modify header information - headers already sent by (output started at /var/www/html/wp-config.php:1) in /var/www/html/wp-login.php on line 509

A file printed output before WordPress sent its headers. The message names the file and line. Remove the stray space, byte order mark or echo that started it.

WordPress 7.1 (tested) · PHP 7.4+

Deprecated: Creation of Dynamic Property

Deprecated: Creation of dynamic property MyPlugin::$items is deprecated in /var/www/html/wp-content/plugins/my-plugin/my-plugin.php on line 7

A plugin or theme sets a property its class never declared, and PHP 8.2 flags it. The site works. Update the plugin and log errors, not show them.

WordPress 7.1 (tested) · PHP 8.2+

Fatal Error: Allowed Memory Size Exhausted

Fatal error: Allowed memory size of 41943040 bytes exhausted (tried to allocate 62918656 bytes) in /wp-content/plugins/some-plugin/file.php on line 12

PHP hit its memory limit. The number in the message is the limit in force. Read it, raise WP_MEMORY_LIMIT, and find what used the memory if it returns.

WordPress 7.1 (tested) · PHP 7.4+

Fatal Error: Cannot Redeclare Function (Previously Declared In)

Fatal error: Cannot redeclare my_helper() (previously declared in /var/www/html/wp-content/plugins/my-plugin/my-plugin.php:6) in /var/www/html/wp-content/plugins/my-plugin-copy/my-plugin.php on line 6

Two files define the same PHP function. The message names both. Usually two copies of one plugin are active: deactivate or remove the extra copy.

WordPress 7.1 (tested) · PHP 7.4+ (message tested on PHP 8.3)

Fatal Error: Cannot Use Object of Type WP_Error as Array

Fatal error: Uncaught Error: Cannot use object of type WP_Error as array

A plugin read a failed WordPress call as if it worked. Switch it off, read the WP_Error message to find the cause, then add is_wp_error() before the array.

WordPress 7.1 (tested) · PHP 7.4, 8.1 and 8.3

Fatal Error: Maximum Execution Time Exceeded

Fatal error: Maximum execution time of 30 seconds exceeded in /var/www/html/wp-content/plugins/stock-sync/stock-sync.php on line 12

PHP stopped a script that ran too long. Find the slow plugin from the file path, check the time limit in Site Health, and raise it where PHP reads it.

WordPress 7.1 (tested) · PHP 7.4+

Fatal Error: Uncaught Error: Call to Undefined Function

Fatal error: Uncaught Error: Call to undefined function create_function() in /var/www/html/wp-content/plugins/old-snippets/old-snippets.php:3

PHP met a function that does not exist. Read the name: removed in PHP 8, a missing PHP extension, or code run too early. Each has its own fix.

WordPress 7.1 (tested) · PHP 8.3 (tested), 7.4+

Fatal Error: Uncaught Error: Class Not Found

Fatal error: Uncaught Error: Class "Acme_Shop\Cart" not found in /var/www/html/wp-content/plugins/acme-addon/acme-addon.php:6

PHP could not find a class a plugin asked for. Read the name: missing vendor folder, wrong file case, admin class loaded too early, or a namespace slip.

WordPress 7.1 (tested) · PHP 8.3 (tested), 7.4+

Parse Error: Syntax Error, Unexpected ...

Parse error: syntax error, unexpected variable "$b", expecting "]" in /wp-content/themes/your-theme/functions.php on line 12

PHP could not read a file because its code is malformed. The message gives the file and line. Check the line before it, restore the file, and test with php -l.

WordPress 7.1 (tested) · PHP 7.4 and 8.3

Warning: Attempt to Read Property on Null

Warning: Attempt to read property "ID" on null in /var/www/html/wp-content/themes/my-theme/footer.php on line 2

A theme or plugin read a property of a missing post, user or term. The path names who wrote it. Update or replace it, or check the value before reading it.

WordPress 7.1 (tested) · PHP 8.0+

Warning: Failed to Open Stream: No Such File or Directory

Warning: require(/var/www/html/wp-content/plugins/my-plugin/includes/loader.php): Failed to open stream: No such file or directory in /var/www/html/wp-content/plugins/my-plugin/my-plugin.php on line 5

PHP could not find or read a file it was told to load. The folder in the path says whose file it is: a plugin, a theme, a cache drop-in or WordPress core.

WordPress 7.1 (tested) · PHP 8.3 (tested)

Warning: Undefined Array Key

Warning: Undefined array key "size" in /var/www/html/wp-content/plugins/demo-bug/demo-bug.php on line 8

A plugin or theme read an array item that is not there. The path names who wrote it. Update or replace it, and log errors instead of showing them.

WordPress 7.1 (tested) · PHP 8.0+

Updates and installs

A plugin, theme or core install or update stops with an error.

Another Update Is Currently in Progress

Another update is currently in progress.

A WordPress core update left its lock behind. It clears itself after 15 minutes, or you can delete the core_updater.lock option once no update is running.

WordPress 7.1 (tested) · PHP 7.4+

Current PHP Version Does Not Meet Minimum Requirements for Plugin

Error: Current PHP version (8.3.36) does not meet minimum requirements for Plugin Name. The plugin requires PHP 9.0.

The plugin needs a newer PHP or WordPress than your site runs. Update PHP at your host, update WordPress, or install an older plugin version that still fits.

WordPress 7.1 (tested) · PHP 7.4+

Download failed. cURL error 6: Could not resolve host

Download failed. cURL error 6: Could not resolve host: mysite.invalid

The words after Download failed. name the step that stopped: DNS, a blocked host, a bad address or a 404. Test the lookup from the server, then fix that step.

WordPress 7.1 (tested) · PHP 7.4+

Incompatible Archive: The Package Could Not Be Installed

The package could not be installed. No valid plugins were found.

WordPress could not open or read your plugin zip. Check it with unzip, take out a zip-in-zip or extra folder, and upload the zip that holds one plugin folder.

WordPress 7.1 (tested) · PHP 7.4+

Installation Failed: Could Not Copy File (and Could Not Remove the Old Plugin)

Installation failed: Could not copy file. Update failed: Could not copy file. Update failed: Could not remove the old plugin.

WordPress could not write a file or delete the old plugin folder. Find the failing step, free disk space or fix the folder owner, then check the old plugin.

WordPress 7.1 (tested) · PHP 7.4+

Installation Failed: Could Not Create Directory

Installation failed: Could not create directory. /var/www/html/wp-content/upgrade/classic-editor.1.7.0 Unable to create directory wp-content/uploads/2026/10. Is its parent directory writable by the server?

WordPress cannot write to a folder in wp-content. Read the path in the message, check who owns that folder, and fix the owner before you touch the permissions.

WordPress 7.1 (tested) · PHP 7.4+

Installation Failed: Destination Folder Already Exists

Installation failed: Destination folder already exists.

A folder with this name already holds files in wp-content/plugins. Use Replace current with uploaded, or move the old folder out of plugins and install again.

WordPress 7.1 (tested) · PHP 7.4+

Plugin Could Not Be Activated Because It Triggered a Fatal Error

Plugin could not be activated because it triggered a fatal error.

PHP crashed while WordPress test-loaded the plugin. The site is fine and the plugin stays off. Read the real error in debug.log or WP-CLI, then fix it.

WordPress 7.1 (tested) · PHP 7.4+

The Theme Is Missing the style.css Stylesheet

The package could not be installed. The theme is missing the style.css stylesheet.

WordPress found no style.css where it looks for one. Upload the zip that holds the theme itself, with style.css in the top folder, or fix the Broken Themes row.

WordPress 7.1 (tested) · PHP 7.4+

Unable to Connect to the Filesystem. Please Confirm Your Credentials

Unable to connect to the filesystem. Please confirm your credentials.

WordPress cannot write files as itself, so it asks for FTP details. Fix the owner of wp-content and the WordPress files, not the FTP form or permissions.

WordPress 7.1 (tested) · PHP 7.4+

Uploads and media

A file or image will not upload, or the Media Library rejects it.

"File Exceeds the Maximum Upload Size for This Site"

photo.jpg exceeds the maximum upload size for this site.

Raise upload_max_filesize and post_max_size together in your host panel or .htaccess. WordPress uses the smaller of the two as the limit.

WordPress 7.1 (tested) · PHP 7.4+

413 Request Entity Too Large in WordPress

413 Request Entity Too Large

A 413 means your web server refused the upload before WordPress read it. Raise nginx client_max_body_size or Apache LimitRequestBody, then PHP's limits.

WordPress 7.1 (tested on Apache 2.4.69 with mod_php, and nginx 1.31.8 in front of it) · PHP 7.4+

Missing a Temporary Folder

Missing a temporary folder.

PHP has no folder it can write an upload to. Make /tmp or upload_tmp_dir writable in php.ini. WP_TEMP_DIR in wp-config.php does not fix it.

WordPress 7.1 (tested) · PHP 7.4+

Sorry, You Are Not Allowed to Upload This File Type

Sorry, you are not allowed to upload this file type.

WordPress accepts only listed file types and checks content too. Allow one type with an upload_mimes snippet, or re-save a file that is not what its name says.

WordPress 7.1 (tested) · PHP 7.4+

The Link You Followed Has Expired

The link you followed has expired. Please try again.

WordPress rejected a form because its security token was missing or stale. After a theme or plugin upload, the cause is usually post_max_size set too low.

WordPress 7.1 (tested) · PHP 7.4+

The Server Cannot Process the Image (WordPress Image Upload Error)

The server cannot process the image. This can happen if the server is busy or does not have enough resources to complete the task. Uploading a smaller image may help. Suggested maximum size is 2560 pixels.

Making the smaller sizes failed, usually for lack of PHP memory. Upload a smaller image, then read the debug log. Raise the limit only if it is under 256M.

WordPress 7.1 (tested) · PHP 7.4+

The Uploaded File Could Not Be Moved to wp-content/uploads

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

The month folder in uploads exists, but PHP may not write in it. Find who owns it, give it to the PHP user, and set 755. No 777 needed.

WordPress 7.1 (tested) · PHP 7.4+

The Uploaded File Exceeds the upload_max_filesize Directive in php.ini

The uploaded file exceeds the upload_max_filesize directive in php.ini.

The file is bigger than PHP's upload_max_filesize. Raise it in your host panel or .htaccess, or install the zip with WP-CLI or SFTP instead of the upload form.

WordPress 7.1 (tested) · PHP 7.4+

Login and access

You cannot log in, reset a password or get into a screen.

Cookies Are Blocked or Not Supported by Your Browser (WordPress Login)

Error: Cookies are blocked or not supported by your browser. You must enable cookies to use WordPress.

WordPress did not get its test cookie back. Allow cookies for the site, open the exact Site Address, or fix COOKIE_DOMAIN and the login cache.

WordPress 7.1 (tested) · PHP 7.4+

Sorry, You Are Not Allowed to Access This Page

Sorry, you are not allowed to access this page.

WordPress does not see a role that allows this screen. After a migration the cause is usually a table prefix mismatch. Check the role, then repair the keys.

WordPress 7.1 (tested) · PHP 7.4+

The Password You Entered for the Username Is Incorrect

Error: The password you entered for the username admin is incorrect. Lost your password?

WordPress found your account but the password did not match. Reset it with Lost your password or wp user update, and rule out a lockout plugin first.

WordPress 7.1 (tested) · PHP 7.4+

Your Password Reset Link Appears to Be Invalid

Error: Your password reset link appears to be invalid. Please request a new link below.

The reset key in the link is gone, changed or never reached WordPress. Request one new link, use only that email, and reset by WP-CLI if no mail arrives.

WordPress 7.1 (tested) · PHP 7.4+

Something fails when you save, edit or visit

The site is up, but one action is refused, one page cannot be found, or the editor breaks.

Are You Sure You Want to Do This? Please Try Again

Are you sure you want to do this? Please try again.

A security token check failed. WordPress 5.0 and later say "The link you followed has expired", so this wording comes from old WordPress or from a plugin.

WordPress 7.1 (tested) · WordPress 4.9 and earlier · PHP 7.4+

cURL Error 28: Operation Timed Out in WordPress

cURL error 28: Operation timed out after 5003 milliseconds with 0 bytes received

WordPress waited for another server and gave up. Read the number in the message, log the URL that failed, test it from the server, then fix the slow side.

WordPress 7.1 (tested) · PHP 7.4+

Mixed Content Warnings After Moving WordPress to HTTPS

Mixed Content: The page at 'https://example.com/' was loaded over HTTPS, but requested an insecure script 'http://example.com/wp-content/plugins/x/x.js'. This request has been blocked; the content must be served over HTTPS.

Chrome blocks http:// scripts and styles on an https:// page. Find each address in the console, then fix it at the source with wp search-replace.

WordPress 7.1 (tested) · PHP 7.4+ · Chrome

The Editor Has Encountered an Unexpected Error

The editor has encountered an unexpected error.

A script crashed inside the block editor. Read the browser console to find the plugin file, deactivate it, then restore unsaved text with Restore the backup.

WordPress 7.1 (tested) · PHP 7.4+

This Block Contains Unexpected or Invalid Content

Block contains unexpected or invalid content.

The saved HTML no longer matches the block. Use Resolve to see the difference and Convert to HTML to keep everything. Attempt recovery can delete content.

WordPress 7.1 (tested) · block editor

Updating Failed. The Response Is Not a Valid JSON Response

Updating failed. The response is not a valid JSON response. Publishing failed. The response is not a valid JSON response.

The block editor got something other than JSON back from the REST API. Open /wp-json/ to see what, then fix permalinks, stray output, or a blocking rule.

WordPress 7.1 (tested) · PHP 7.4+

WordPress Posts Return 404 Not Found (Pages Work)

Page not found The page you are looking for doesn't exist, or it has been moved. Please try searching using the form below.

Posts show a 404 while pages and the dashboard load. The saved rewrite rules are stale, or the server is not passing URLs to WordPress. Flush the rules first.

WordPress 7.1 (tested on Apache) · PHP 7.4+

Your Site Could Not Complete a Loopback Request

Your site could not complete a loopback request

Site Health says your site cannot call itself. Read the error under the title, then fix the port, DNS, password or firewall rule it points to.

WordPress 7.1 (tested) · PHP 7.4+