A 500 Internal Server Error means the server could not complete the request, but it did not provide a specific public explanation. On WordPress websites, the cause is commonly a plugin or theme conflict, damaged server rules, exhausted PHP memory, incompatible PHP code, or a hosting problem.
Because the message is generic, the fastest approach is checking recent changes and working through the likely causes in a controlled order.
1. Confirm the Scope of the 500 Error
Test the homepage, an internal page, and the WordPress login screen. Also try a private browser window.
- If one URL fails, the problem may be specific to that page, redirect, or template.
- If the front end works but wp-admin fails, an administrator function or plugin may be responsible.
- If every URL fails, check the server, PHP, plugins, theme, and WordPress core files.
2. Check What Changed Before the Error
Review the most recent website activity. Common triggers include:
- A plugin, theme, or WordPress update
- A PHP version change
- New custom code in WPCode or functions.php
- A migration or domain change
- Changes to .htaccess or server redirects
- Malware cleanup or security rules
Reverse the most likely recent change before making unrelated adjustments.
3. Check the Hosting Status and Error Logs
Look for outages or resource warnings in your hosting dashboard. Then review the PHP and server error logs at the exact time the 500 response occurred.
The newest fatal error often identifies the responsible file, plugin, theme, or PHP function. If you cannot access the logs, ask your host to provide the specific server error rather than only confirming that the site returns a 500 response.
4. Disable the Suspected Plugin
If the error started after a plugin change, deactivate that plugin. When wp-admin is unavailable, use a file manager, SFTP, or FTP to rename its folder inside wp-content/plugins.
If the responsible plugin is unknown, rename the entire plugins folder to plugins-disabled. If the website returns, restore the original folder name and activate plugins individually until the error returns.
5. Temporarily Switch the Theme
A broken theme file or incompatible PHP code can generate a 500 error. Confirm that a default WordPress theme is installed, then temporarily activate it.
If the dashboard is unavailable, rename the active theme folder inside wp-content/themes. WordPress may switch to an installed default theme automatically.
6. Reset the .htaccess File
On Apache servers, damaged or conflicting rules inside .htaccess can cause a 500 error.
- Download a backup of the existing
.htaccessfile. - Rename it to
.htaccess-old. - Reload the website.
- If the site works, go to Settings, then Permalinks.
- Save the permalink settings to generate fresh WordPress rules.
This step does not apply in the same way to Nginx or some managed hosting platforms.
7. Check the PHP Memory Limit
An error log containing “Allowed memory size exhausted” confirms a memory problem. You may be able to increase the WordPress memory limit inside wp-config.php:
define( 'WP_MEMORY_LIMIT', '256M' );
Your hosting provider may enforce a lower server limit. Increasing memory can restore the website, but it may only hide a plugin or process consuming excessive resources.
8. Check PHP Compatibility
If the error started after changing PHP versions, confirm that the active theme and plugins support the selected version. Temporarily returning to the last working PHP version can help confirm compatibility, but outdated software still needs to be updated or replaced.
9. Enable WordPress Debug Logging
Add these settings to wp-config.php above the line that says to stop editing:
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );
Reproduce the error, then check /wp-content/debug.log. The official WordPress debugging documentation explains these settings. Disable debugging and remove exposed logs after testing.
10. Restore Clean WordPress Core Files
If a WordPress update failed, replace the core files with a clean copy. Do not replace wp-content or wp-config.php. Create a complete backup first.
Can a 500 Error Affect SEO?
Yes. Search engines cannot access a page returning a 500 response. Short incidents are normally recoverable, but repeated or extended server errors can interfere with crawling, indexing, traffic, and conversions.
After recovery, test important URLs and review Google Search Console for server errors.
Need Help Fixing a WordPress 500 Error?
If the logs do not identify the cause or the website remains unavailable, stop making random changes. Each additional change can make the original failure harder to diagnose.
