WordPress markets itself as the world’s foremost website development platform. But for all the positive spin, there are still elements of the WordPress ecosystem that can drive you up the wall.
HTTP 500 “internal server error” is one such rage-inducing message that you may see pop up when first getting to grips with the platform. The 500 error doesn’t provide any additional information about what’s caused it or where it’s come from, making the task of troubleshooting a hassle.
How can you deal with an error when you have no idea where it came from? It’s not fair.
The good news is that you’re reading this article. We’re going to drill down and take a long, hard look at how to troubleshoot the dreaded 500 internal server error so that you can continue building your website and get online without any further hiccups.
What Is A 500 Internal Server Error?
It turns out that 500 internal server errors are not unique to WordPress: they can occur on any website hosted on a third-party server. That’s because the error is referring to what’s happening in the server, hence, “internal SERVER error.”
But those three words don’t tell you much. Yes, there’s an error internal to the server, but what else? What’s caused the error? What is the error? The error message tells you nothing.
The good news is that many people have had the same experience as you. And, with a little help from articles like this, have solved the problem, enabling them to carry on developing their site on WordPress.
Let’s take a look at some of the ways that you can troubleshoot 500 errors.
DeActivate Your Plugins
People have discovered that specific plugins can cause 500 internal server errors, so one of the easiest fixes is to deactivate your plugins.
When it comes to plugins, it pays to be methodical. Try deactivating all of them to see if the problem goes away. If it does, then begin reactivating one plugin at a time. If a plugin causes the error message to reappear, then shut it off and try activating another until you have as many of your plugins operating as possible.
It’s worth pointing out that both individual plugins, as well as combinations of plugins, can precipitate the error. So you may find that you can keep essential but problematic plugins by turning off others which seem to work perfectly fine by themselves.
Check That Your Core Files Are Not Corrupted
If deactivating your plugins didn’t make a difference, then the next step is to re-upload your core files. Before we begin, it’s worth pointing out the by re-uploading wp-admin and wp-includes, you’ll preserve all your information.
Go to the WordPress website and click the download button and assign a folder for the zip file.
Once you’ve opened the FTP client, select the wp-admin and wp-includes folders and right click. You should see a menu of options. One of those options is “upload.” Select it.
Once you’ve told the client that you want to upload those files, it’ll ask you if you wish to overwrite the existing folders on the server. Click “overwrite.” Clicking overwrite instructs WordPress to re-write your existing folders, hopefully eliminating any corrupt files that might be causing the 500 internal server error in the process.
Increase Your PHP Memory Limit
The purpose of the PHP memory limit is to limit the amount of server memory an individual website visitor can use. The main reason for the restriction is to prevent hackers from crashing website servers, but they can also be helpful in periods of peak demand.
Having a PHP limit set too low, however, could mean that you’re exceeding the limit, resulting in an “internal server error.” If you find that you’re getting the error when you sign into your WordPress Admin or try to upload large files to your site, then a low PHP limit might be the problem- you need more memory.
Increasing the PHP limit is easy. First, create a blank text file called php.ini. Next, open the text file and write: memory=64MB. This tells WordPress that you want to change the memory limit. Save the document, open FTP, and upload the file to your wp-admin folder.
It’s worth pointing out that increasing the memory limit is not a real solution to the problem. Sure, boosting PHP and setting it high will get rid of the error message, but it won’t eliminate the issue causing your memory saturation. All your memory is getting used up because of a problem with your website.
What could the problem be? You may have poorly optimised plugins hogging memory bandwidth. You could also be using a poorly coded website or a website with a memory-intensive theme. Whatever the issue, it’s best to sort it out before your site goes live and has to deal with real-world traffic.
Corrupt .htaccess File
Finally, a corrupt .htaccess file might be generating the internal server error message in WordPress. .htaccess files are files that manage directories for Apache-based web servers.
To solve a .htaccess problem, go to your FTP and look for the .htaccess file underneath all your regular folders. Rename the file something else, like htaccess_old, and then try firing up your WordPress account again. If the problem is a corruption problem with .htaccess, then the issue should have gone away.
Go to Settings > Permalink in the WordPress admin and click save. This will create a new .htaccess file that should work properly.
Contact Your Hosting Provider
Sometimes, try as you might, you can’t solve a 500 internal error yourself. It’s not always your fault; it can be the fault of the person operating the server.
Most hosting providers have helplines that you can call. Hosting providers staff have access to diagnostic data which helps them identify whether there’s a problem at their end. Assistants can search back through server logs and look for issues that may be producing an error message at your end.
Error messages like 500 internal server error can be very annoying, but they are solvable, even if they test your patience.