If you’ve been a WordPress website owner for a long time, you must have come across the internal 500 server error at some point.
It is one of the most common and frustrating website errors you can get. Internal 500 is very common because it is easy for WordPress site owners to run into this issue. It is frustrating because troubleshooting this error can be a tedious task, especially if it happens to you for the first time.
The good news is that the internal 500 error is fixable. This article covers some common ways you can fix this error, and how to avoid it in the first place.
First, let’s understand why some websites run into this brick wall.
What causes the internal 500 error?
According to the Internet Engineering Task Force (IETF), the internal 500 error occurs when a server encounters an unexpected obstacle that stops it from completing a request.
Sounds ambiguous, right?
This is because it is. The internal 500 error occurs when the server cannot define the root cause behind an error happening. You can think of this error like an SOS message from the server: something has gone wrong, but the reason is unknown.
This makes fixing this error a little more tedious than usual. Since the root cause of this error is unknown, you have to try a bunch of different methods to see what is causing this error. Once the cause is known, you can then proceed to fix it.
If you’re an AppMySite user, an internal 500 error can also cause your mobile app to stop working. If you create an app using your website, an error like this will naturally crash the app as well.
The following section covers the steps you can take to troubleshoot and fix the internal 500 error.
Troubleshoot and fix the internal 500 error
Since internal 500 can be caused because of a number of reasons, you have to perform a series of tests to diagnose and fix this error.
The following sections explain the most common ways to fix this error. If your website is down with internal 500, there is a good chance it can be fixed with any of the following methods.
Note: Please make a backup of your WordPress site before trying out the methods discussed below.
#1: Clear cache and reload again
In some cases, internal 500 is caused by a simple caching issue with your browser.
If this is the cause, you’re in luck. Simply clear all your browser cache and reload the website again. You can do a hard refresh for a webpage on your website and see if the page loads. If it does, the error was caused by a caching issue on your browser.
It is important you complete this step before diving into more technical troubleshooting methods. If a simple browser cache issue is causing this error, the last thing you want is to go through a complete technical analysis of your site.
#2: Rename .htaccess file
One of the common reasons behind an internal 500 error is a corrupt .htaccess file.
Typically, a .htaccess file manages the overall configuration of a website. Generally, you can create a new .htaccess file on WordPress by navigating to Permalinks in your admin panel and saving the settings.
However, in case you have an internal 500 error, you won’t be able to log in to your admin panel.
So how do you fix this error?
The following steps explain how:
- Login to your website server via FTP or SSH. Filezilla is an open-source solution for this. If you have a cPanel with a separate file manager application, you can do this on the filer manager too.
- You will find the .htaccess file in the WordPress installation. Rename the file to ‘.htaccess.old’
- This will deactivate your current htaccess file. Now trying reloading your site again.
- If your site reloads, the error was being caused by a corrupt .htaccess file. Navigate to the Permalinks screen in your admin panel, and click on Save again to create a new .htaccess file.
- If your site still shows the internal 500 error, go back to the FTP client or your cPanel file manager and rename the file back to .htaccess.
#3: Raise PHP memory limit
Every time you purchase a hosting plan, your server allocates a specific PHP memory limit for your website. As your website grows and you add more plugins, you may exceed your memory allotment.
Once the limit is breached, an internal 500 error occurs.
Here’s how you can fix this issue.
- In your cPanel, go to Select PHP version
- Click on Switch to PHP options. On the options page, select the memory_limit value and increase it to 128M.
- Reload your website again. If the error goes away, it was being caused by the internal 500 error.
- If the error doesn’t go away, set the memory limit back to its original value. This would mean that the PHP memory limit was not the issue causing the website to stop. You would thus need to proceed to the next steps.
#4: Deactivate all plugins and themes
Let’s say you have a WordPress site with 20 plugins. One day, you see that all 20 of them need an update. You decide to update them all.
Read: How many plugins is too many? Here’s how plugins can slow your website speed
And then you get an internal 500 error.
This happens far too often with website owners. Plugin and theme updates can easily cause an internal 500 error. This may happen because of conflicts between different plugins and themes once an update is made live.
Since you cannot access your WordPress admin area, you will need to deactivate your plugins and themes on your website server directly. You can either log in to your server through FTP or do it on cPanel file manager.
Here’s what you need to do:
- Navigate to the wp-content folder in your FTP panel. You will find the plugins folder here.
- Rename the folder to ‘plugins.old’. This will deactivate all your website’s plugins.
- Reload the website again. If the internal 500 error goes away, a plugin on your website is likely causing this issue.
- If this method works, open the plugin folder. Next, rename each plugin to ‘pluginame.old’ to deactivate it. Keep reloading your website after renaming each plugin.
- Once you find the plugin causing the issue, log in to your admin panel again and delete the plugin. You can then contact the plugin author about the error.
#5: Check for permission error
Internal 500 errors can also be caused by permission errors. In your WordPress installation, each file, folder, and directory has a certain level of permission.
In case a plugin or theme on your website changes these permissions, you may face an issue.
There are certain recommendations WordPress has when it comes to settings permissions. You can visit WordPress’ official documentation on file permissions for more information.
So how do you fix this issue?
First, check if your permissions are set at the recommended level. You can do this on your FTP client or your cPanel file manager. If the permissions are set incorrectly, contact your website host.
#6: Ask your website host
If none of these methods work, get in touch with your website host. Your host would be able to pinpoint the reason behind the error through the server logs.
If you have a dependable hosting partner, you’re likely to get guidance on how to resolve this issue. If you have a self-managed host, getting guidance would be difficult as your host may not provide support services.
If you don’t have a server administrator on your tech team, it is a good idea to choose a managed hosting partner in the first place.
Siteground: Delivering peerless hosting support to WordPress site owners
SiteGround is one of the most popular and trusted website hosting providers in the world. It delivers top-notch loading speeds for your website from secure servers spread across the world.
If your concern while selecting a website host is customer support, SiteGround has you covered. You can get 24×7 support for Siteground, specializing in fast resolution for any technical issue a customer is facing.
In case you’re in a bind with an internal 500 error or any other site issue, SiteGround helps your website get back up and running in no time.
Additionally, you get a ton of other perks for signing up for a Siteground hosting plan:
- Fully managed: Siteground manages your website’s hosting for you. This allows you to focus more on growing your website. Their plans include managed WordPress updates, static caching features, and more.
- Security: Get managed security solutions for your website. Siteground protects your website with a custom application firewall. Furthermore, they continually add security patches to better protect your website from cyber-attacks.
- Freebies: Improve your website speed with solutions like CDNs and caching features. Additionally, you get a free SSL certificate as part of your plan.
- Automatic migration: If you already have a WordPress site, you can automatically migrate to Siteground with their migration plugin.
How to avoid the internal 500 server error?
The solutions discussed above can help you resolve the internal 500 error. However, the best form of preparation in this regard is avoidance.
Troubleshooting this error takes time, and if you have a well-trafficked website, you can lose a lot of business even due to a short downtime.
So what are the best ways to avoid the internal 500 server error in the first place?
#1: Get a decent website host
A decent website host manages your site’s hosting for you. Siteground is an example of the same. You can essentially rely on your host to prevent unwanted downtime on your website.
Web hosts can stop you from installing fishy plugins known for having performance and security issues. Additionally, they can manage core WordPress websites to make sure your site runs on the latest version of WordPress.
#2: Make all updates on a staging website
Updating your site’s core WordPress code version, plugins, and themes often seems like a no-brainer. However, new updates sometimes create conflicts between plugins and crash the website.
Since updates are important, you can’t ignore them at the same time. It is thus a good idea to set up a staging website. A staging website is like a duplicate where you can test updating your themes and plugins to see if everything works fine.
Once you ascertain that the staging website works seamlessly after the updates, you can port the updates to your main website.
If your website has a lot of plugins and custom functionality, setting up a staging website is very important. This is because having more plugins increases the likelihood of a conflict arising due to an update.
#3: Vet the plugins and themes you install
Before installing a plugin or theme, carefully read its reviews. This is important because a plugin’s reviews generally sum up the experience website owners have previously had with it.
If the reviews point to several website owners facing internal 500 errors because of a plugin, it is not a good idea to install it.
Reviews also make it easier for site owners to vet a plugin. If you don’t have the technical know-how to vert a plugin’s code, reviews are the next best thing.
Downtime caused by the internal 500 error is detrimental to your site’s user experience. In this article, we discuss how you can troubleshoot and fix this error for your WordPress site.
If you convert your WordPress website to a mobile app on AppMySite, these errors can also cause your app to stop working. It is thus vital for site owners to know how to deal with these issues and take steps to avoid them in the first place.