Fixing WordPress Internal Server Errors - Error 500
Error 500 - Internal Server Error is one of the most frustrating WordPress errors. It's non specific, and can seem to come on suddenly with no easy explanation.
It's frustrating for WordPress end users as well as developers.
There are various things that can cause this and we are going to go through a list of items that you can check to get your site up and running again.
1. Plugins
To start with low hanging fruit, sometimes a plugin can be responsible for there errors. You will want to deactivate them one by one to see if your site returns to normal. If you can't access the admin area, you can temporarily deactivate any plugin, by renaming the plugin folder. You can first rename the actual plugins folder /wp-content/plugins/, if your site comes back, you can then go through the individual plugins and test each one.
2. Theme
If you're actively developing your theme, you can deactivate it in the same way as previously done with the plugins. WordPress will load a default theme if it can't find your active theme.
3. The htaccess file
If there are any errors in your htaccess file, your site can give you an Internal Server Error. The smallest of errors can cause this problem. The easiest way to check it is to download it, to make sure you have a copy, and then delete the server copy. Reload the site, if you get your site back, your htaccess file has an error and needs to be fixed.
4. WordPress Core
This is a more rare situation, but we've seen it happen if there are permissions problems on the site. Sometimes, WordPress will fail to properly update, but it will think that the update is complete. This can cause anything from site slowness, to a Error 500: Internal Server Error. If you've tried everything else, try reinstalling WordPress Core to see if that will fix your Internal Server Error.
If you've gotten this far and your site is still down, or you've isolated the problem, but the you aren't sure what the next step is in getting it fixed, please get in touch with us!