Fix a WordPress internal server error
Note: This article describes the troubleshooting process for the 500 Internal Server Error. If you are unsure which error is causing issues on your site, check out the article about the most common WordPress errors with suggested solutions.
An internal server error (ISE), also known as a 500 error, is a generic error message that appears when your WordPress site cannot be displayed. In older versions of WordPress, an ISE can also appear as a blank white page without any error details. The error can happen for a variety of reasons, but it’s usually caused by a conflict with WordPress, a plugin, a theme, or one of the site’s control files. This most commonly happens after an update.
Finding the cause of an ISE and then resolving it is often a matter of trial and error. Below are some of the ways you can find the cause of the error, with links to articles that will take you through each process and describe how to fix it.
Note: Resolving the Internal Server Error requires advanced troubleshooting methods, which include connecting to your hosting with an FTP app, editing or disabling files, and making changes in the database. If you do not want to fix this error yourself, our WordPress Premium Support team can do that for you.
The first step in troubleshooting ISE is to connect to your server with the File Transfer Protocol (FTP). It will allow you to access and edit your site's files. When your site is experiencing a 500 ISE, your WordPress dashboard and tools like a File Manager won't work. In this case, you will need to use an FTP app to edit your site files.
There are many different FTP apps you can use, but we recommend FileZilla. Choose your hosting type from the list below to learn how to obtain FTP credentials and connect to your site:
Once connected, find a folder where your WordPress site is located–it should contain files and folders with the wp- prefix, like wp-admin, wp-content and wp-config.php. Now, you can start troubleshooting and eliminating the possible causes one by one until you find out what is causing the ISE.
Disable your .htaccess file
One of the most common causes of an ISE is a corrupt .htaccess file. The .htaccess is a control file that WordPress uses to communicate with the server. WordPress, plugins, and themes often make changes to this file, which can sometimes corrupt the file.
The file should be located in the main folder that contains your WordPress installation (root folder). There can be other .htacess files in different folders, but you should disable this one when troubleshooting the ISE.
The .htaccess file is hidden by default, so if you do not see the file, make sure to enable the option to show hidden files in FileZilla or any other FTP app you are using.
Once you find the file, rename it to .htaccess.disabled and then visit your site in a private browsing mode in Chrome, Firefox or Edge:
- If the error is gone, reset your permalinks to create a new .htaccess file automatically.
- If the error is still there, rename the file back to .htacess and continue following the recommendations from this article.
Increase your memory limits
Your hosting account assigns a set amount of its memory to running PHP, which is necessary for your WordPress site to function. Due to your site's size or the number of plugins it uses, the site may require more than the default PHP memory.
To do this, find the wp-config.php file in the folder with your WordPress installation and follow steps 3-7 from this article to increase the WordPress memory limit. Visit your site in private browsing mode, and if increasing the WordPress memory limit did not help, try increasing the PHP memory limit to 256M or 512M.
Disable all your plugins
WordPress plugins can cause a conflict with one another, with an active theme, or with your version of WordPress, which can lead to the ISE. This is more likely to occur after you update WordPress, the active theme, or one of your plugins.
To check if an issue is caused by plugins, in the wp-content folder, rename the plugins folder to plugins.renamed and visit your site in a private browsing mode:
- If the ISE is resolved, rename the folder with plugins back to plugins and continue investigating the issue by following the steps from this article to disable individual plugins one by one to determine which one is causing the error. If you want to continue using the problematic plugin, upload the latest version of the plugin with FTP and then enable it. This will update the plugin. If updating does not work, try the following:
- Search for the plugin in the WordPress plugin repository on wordpress.org. On your plugin's homepage, select View support forum. Search the forum for a solution specific to your issue.
- If you purchased your plugin from somewhere else, review the documentation provided by the plugin's developer.
- If the issue persists, rename the folder with plugins back to plugins and try the next possible solution.
Re-upload WordPress core files
Note: If your site is on Managed WordPress hosting, skip this section because WordPress core files come preinstalled with the hosting plan. They are automatically updated to keep your site secure, and you cannot replace them with FTP.
In some situations, your WordPress core files can be corrupted during an update, causing the ISE. Try re-uploading WordPress core files to make sure they are not causing the issue.
Download the same version of WordPress you currently use from the WordPress repository, unzip it on your local computer, and transfer (overwrite) the wp-admin and wp-includes folders from your local computer using FTP.
Note: If you're not sure which WordPress version your site uses, you can check in the wp-version.php file found in the wp-includes folder.
Switch to a default WordPress theme
If the options above did not help fix the issue, your theme might be causing the conflict. To test, you can change to one of the default WordPress themes, like TwentyTwenty or TwentyTwentyOne. You'll have to change the theme in the database since your WordPress dashboard will be unavailable when your site is experiencing a 500 ISE.
Note: If you do not have a default WordPress theme installed, you can install it with FTP and then activate it in the database.
If your site loads properly after switching to the default theme, you can update your normal theme to the latest version and activate it.
If updating the theme does not work, try the following:
- Search for the theme in the WordPress theme repository on wordpress.org. On your theme's homepage, select View support forum. Search the forum for a solution specific to your issue.
- If you purchased your theme from somewhere else, review the documentation provided by the theme's developer.
More info
- Review the common WordPress errors at WordPress.org.
- If you do not want to fix this error yourself, our WordPress Premium Support team can do that for you.