Have you ever noticed that why every time you are greeted by a message saying, ‘Internal Server Error’ when you visit your WordPress site?
Undoubtedly, it is a frightening error, because the error establishing a database connection message and it might happen that your site completely disappears.
However, there is no need to worry, as the internal server error message can be fixed.
In this Blog, I’ll tell you:
- What the internal server error is, as well as some of its causes.
- How to fix the internal server error in WordPress.
What Does the “Internal Server Error” Message Mean?
Internal server error, also known as 500 Internal Server Error is a generic error message that your server gives you when it runs into a problem. Generally, it is a way of telling you that ‘Something’ went wrong, but it doesn’t tell you what the something is.
Basically, it’s telling you that “something” went wrong… but it’s not very specific about what that “something” is.
That’s not a very satisfying explanation – but again, it’s not a very specific error.
Reason Behind the “Internal Server Error” Message
The reason for this error message is quite vast, so there’s not a single problem for its cause.
However, some common causes With WordPress are as follows:
- A corrupt .htaccess file.
- A plugin issue.
- Hitting your PHP memory limit.
- Corrupt WordPress core files.
To fix all of those problems, I’ll show you some solutions. However, you can also consult your server’s error logs, which is a quite a great method to diagnose the reason causing the problem.
Not only this, you can view error logs by going to your cPanel dashboard and clicking on the Error Log:
As you can see from the image below, these error logs aren’t always the most user-friendly documents to read:
- Consult your host’s support and see what the issue might be.
- You can even Jump straight into some of the common fixes that I’m about to outline below.
- Inmotion Hosting
Steps To Fix “Internal Server Error” In WordPress
Here are the lists of ways to fix the ‘Internal Server Error” in WordPress.
- Generate a new .htaccess File: Your .htaccess file is a configuration file for your web server, which is used by WordPress in order to set up your permalink structure. Because it controls your web server configuration. Furthermore, even a tiny fault in your .htaccess file can cause the internal server error
You don’t need to worry as this problem can be easily fixed as you just have to do is to force WordPress so that it can generate a new .htaccess file.
Step 1: Rename your existing .htaccess file.
You need to rename your existing .htaccess file to get the things started. You can do this by either:
- Connecting to your site via FTP. You can use FileZilla to do that.
- Using your cPanel’s built-in File Manager tool.
I will show you the process by using File Manager because it’s the simplest method. However, the principles are same.
Right from the cPanel dashboard, you can easily access File Manager.
Once File Manager is opened, you can look for the .htaccess file in the root of your website. After that, just right click and choose rename.
Rename it to some other name like “.htaccess_old”.
Now, you just need to create a new .htaccess file to replace it.
Step 2: Generate a new .htaccess file.
Go to your WordPress dashboard in order to force WordPress to generate a new .htaccess file
After that, navigate to Settings → Permalinks.
WordPress will automatically generate a new, clean .htaccess file by just clicking the Save Changes button
- Deactivate your Plug-ins and Look for a Faulty one
The next thing that you can try is deactivating your plug-ins, in case, if your .htaccess file wasn’t the problem.
There is no doubt that the plug-in issues or some other conflicts can cause the internal server error
By deactivating your plug-ins, you can find the problematic plug-in and remove it.
However, if you are still able to access your WordPress dashboard then you need to go to the plug-in management area and use the checkbox to deactivate all of your plugins at once:
It is quite obvious that if there is an internal server error in WordPress then you will not be able to access the WordPress admin dashboard. In this case, you can do the following steps.
- Connect to your site via FTP or File Manager. You can use FileZilla.
- Navigate to the /wp-content/ folder.
- Rename the plug-ins folder to something like plugins_old.
When you rename the folder, all of your current plug-ins will be deactivated.
For instance, when you try to open your WordPress dashboard, and if you are able to access it then you should pat yourself on the back.
In your WordPress, if you go to the Plug-ins section then it will display a message “the plug-in has been deactivated due to an error; plug-in file does not exist.”
Don’t be concerned as the major problem is one of the plug-ins.
In order to reactivate them one by one:
- Rename the plug-in folder from plugins_old to plug-ins.
- Now, activate each plug-in one by one from the WordPress dashboard
- Once the Plug-in is activated, just make sure you browse 3-4 pages on your blog. Repeat the whole process until you find a plug-in whose activation causes the internal server error.
In a majority of situations, this will fix the internal server error problem.
- Increase your Web Hosting PHP Memory Limit: If it’s still not working? Then you can try several more things.
The critical issue is that your WordPress site is hitting its PHP memory limit. By default, the WordPress tries to allocate 40MB of memory for single-site installs.
You can manually increase this limit if you are facing some problems.
To perform this, you need to edit your wp-config.php file. You can access it either via cPanel’s File Manager or FTP.
You need to add the following line of code right before the /* That’s all, stop editing! Happy blogging. */ message:
define( ‘WP_MEMORY_LIMIT’, ’64M’ );
Note: This will only help if your host hasn’t already set a PHP limit lower than 64M.
For this reason, if you don’t observe a change after editing your wp-config.php file, I recommend that you must reach out to your host to see the current limit of you PHP.
- Re-upload Core WordPress File
You can try uploading a clean copy of the core WordPress files, in case, if your website is not working in a proper way.
For this solution, I recommend using an FTP program over File Manager.
Note: Before doing this step, make sure you have taken a complete backup of WordPress.
To do this, go to WordPress.org and download the latest version of WordPress:
When the download gets finished, extract the ZIP file and delete the:
- Entire wp-content folder.
- wp-config-sample.php file.
Then, upload all of the remaining files to your WordPress site via FTP.
At this point, one of these solutions has hopefully helped you fix the internal server error message on your WordPress site.
If not, I recommend speaking to your host’s support team and asking them to go through the error logs with you to pinpoint the issue. And if they can’t help, you might need to hire an actual WordPress developer to diagnose things.