If you have been surfing the web for more than a year, then you probably have seen the HTTP 500 Internal Server Error at least a few times. Internal Server Error is one of the common WordPress errors that can put a WordPress beginner in panic mode. Panic is the worst reaction you can have. Take a deep breath and know that others before you have had this issue as well. We have fixed errors like the internal server error, error establishing database connection, white screen of death, and others many times for our users. We can assure you that they are all fixable. It just requires a little bit of patience. In this article, we will show you how to fix the internal server error in WordPress by compiling a list of all possible solutions in one place.
Why do you get Internal Server Error in WordPress?
Internal server error is not specific to WordPress, and it can happen with anything else running on your server as well. Due to the generic nature of this error, it does not tell the developer anything. Asking how to fix an internal server error is like asking your doctor how to fix the pain without telling them where the pain is. Having that said, internal server error in WordPress is often caused by plugin and/or theme functions. Other possible causes of internal server error in WordPress that we know of are: corrupted .htaccess file and PHP memory limit. We have also heard internal server error only showing up when you are trying to access the administrator area while the rest of the site works fine.
Lets take a look at how to go about troubleshooting the internal server error in WordPress.
Checking for Corrupt .htaccess File
The first thing you should do when troubleshooting the internal server error in WordPress is check for the corrupted .htaccess file. You can do so by renaming your main .htaccess file to something like .htaccess_old. To rename the .htaccess file, you will need to login to your site using the FTP. Once you are in, the .htaccess file will be located in the same directory where you will see folders like wp-content, wp-admin, and wp-includes.
Once you have renamed the .htaccess file, try loading your site to see if this solved the problem. If it did, then give yourself a pat on the back because you fixed the internal server error. Before you move on with other things, make sure that you go to Settings » Permalinks and click the save button. This will generate a new .htaccess file for you with proper rewrite rules to ensure that your post pages do not return a 404.
If checking for the corrupt .htaccess file solution did not work for you, then you need to continue reading this article.
Increasing the PHP Memory Limit
Sometimes this error can happen if you are exhausting your PHP memory limit. Use our tutorial on how to increase PHP memory limit in WordPress to fix that.
If you are seeing the internal server error only when you try to login to your WordPress admin or uploading an image in your wp-admin, then you should increase the memory limit by following these steps:
- Create a blank text file called php.ini
- Paste this code in there: memory=64MB
- Save the file
- Upload it into your /wp-admin/ folder using FTP
Several users have said that doing the above fixed the admin side problem for them.
If increasing the memory limit fix the problem for you, then you have fixed the problem temporarily. The reason why we say this is because there has to be something that is exhausting your memory limit. This could be a poorly coded plugin or even a theme function. We strongly recommend that you ask your WordPress web hosting company to look into the server logs to help you find the exact diagnostics.
If increasing the PHP memory limit did not fix the issue for you, then you are in for some hard-core trouble shooting.
Deactivate all Plugins
If none of the above solutions worked for you, then this error is most likely being caused by a specific plugin. It is also possible that it is a combination of plugins that are not playing nice with each other. Sadly, there is no easy way to find this out. You have to deactivate all WordPress plugins at once.
In this method, you will need to either use FTP, or your host’s file manager. Navigate to the /wp-content/ folder. You will see a folder called plugins. Rename the plugins folder to anything that you like. In our example, we will call it “plugins.deactivate”. Once you do this, all of your plugins will be deactivated.
If disabling all plugins fixed the error, then you know it is one of the plugins that is causing the error. Simply go through and reactivate one plugin at a time until you find the one that caused the issue. Get rid of that plugin, and report the error to the plugin author.
Re-uploading Core Files
If the plugin option didn’t fix the internal server error, then it is worth re-uploading the wp-admin and wp-includes folder from a fresh WordPress install. This will NOT remove any of your information, but it may solve the problem in case any file was corrupted.
Ask your Hosting Provider
If nothing works, then you need to get in touch with your hosting provider. By looking at the server logs, they should be able to get to the bottom of things.
These are all the possible solutions that may fix the internal server error problem in WordPress. Did any of the above solutions fixed the problem for you? If so, then please let us know in the comments. Did you encounter the internal server error issue in the past? how did you fix it? If you know of a fix that is not listed in the article above, then please contribute in the comments below. We will make sure to keep the article up to date with any new advice from the users.