There’s never a good time to get an error on your WordPress website. Whether in the admin section or on the frontend, site errors are frustrating. Especially if you don’t know what’s causing them or how to fix them.
Unfortunately, the 500 internal server error is no different. In fact, the internal server error might be one of the most annoying errors around because it’s so vague. It doesn’t give you any additional information about the error, making it nearly impossible to resolve without a lot of time, patience, and of course, troubleshooting.
Add to that the fact that a 500 internal server error creates a lot of downtime for your site, and you might find yourself pulling your hair out as your reputation becomes tarnished and you lose out on sales.
Luckily, we’re here to help if you experience an internal server error on your WordPress site. Keep reading to learn what a 500 internal server error is and ways to fix it so you can get your site back up and running right away.
What Is a 500 Internal Server Error in WordPress?
A 500 internal server error is a generic error that you or your site visitors encounter on your website. It lets you know that there’s a server-level error.
In other words, it means your server cannot display your webpage to site visitors the way it should. It also has the potential to wreak havoc on your WordPress admin area, much like the dreaded white screen of death.
Ironically, a 500 internal server error is not usually an error occurring on your site’s server. Most of the time the problem can be traced back to the root directory of your WordPress website. That said, you’ll never know what’s causing the error until you investigate. And this means a lot of trial and error on your part.
An internal server error may display on your website to site visitors in variety of ways thanks to the different web servers, operating systems, and browsers.
Here are some of the most common terms (that all mean the same thing):
- 500 Internal Server Error
- Internal Server Error
- 500 Internal Server Error
- Error 500
- HTTP Error 500
- HTTP Error 500 – Internal Server Error
- Temporary Error (500)
- HTTP 500
- 500 Internal Server Error. Sorry something went wrong.
It can even say something like “Error code: 500,” much like the one seen on Airbnb.
No matter what your WordPress website’s 500 internal server error looks like, the truth remains: errors that cause downtime are bad for SEO and bad for business.
To minimize the amount of downtime your website experiences because of an internal server error, check out these troubleshooting tips designed to help you pinpoint the problem and resolve it as soon as possible.
How to Fix an Internal Server Error in WordPress
Before we jump into how to fix an internal server error in WordPress do one thing: create a backup of your website (if you aren’t locked out of the admin section).
To troubleshoot the issue you might have to make some significant changes to your website’s root directory, where all your WordPress files are located.
And it’s always better to be safe than sorry when you make drastic changes to your website, especially if you’re trying to fix an error.
For help choosing a backup solution, check out our article on the best WordPress backup plugins around.
And whatever you do, create a manual backup of your website before attempting to fix an internal server error. If by chance the error is occurring on your site’s server, the most recent automated backup your host created may not be viable.
Now let’s take a look at some of the things you can do to fix the 500 internal server error on your WordPress website.
1. Reload the Webpage
This may seem obvious, but sometimes your web host or server might just need a little refreshing to clear out any temporary errors. This is most likely to happen when you update a theme or plugin on your site. If the server becomes overwhelmed because of the update(s), it may experience a time out that is fixed by reloading the page.
If you find this happening to your WordPress site more than once, it’s a good idea you look into a better WordPress hosting solution.
Check out our in-depth comparison of the best managed WordPress hosting available if you’re in need of a better hosting solution.
2. Clear the Browser Cache
Another simple solution to a generic error on your website is clearing the browser cache. Sometimes there’s just a glitch somewhere in the system that’s preventing your site from loading properly.
Here’s a list of helpful resources for clearing your browser cache:
- Single Page for All Browsers
- Google Chrome
- Mozilla Firefox
- Safari
- Internet Explorer
- Microsoft Edge
- Opera
There’s no sense diving deep into internal error solutions if clearing the cache works.
3. Check the WordPress Admin Area
Again, before wasting a bunch of time troubleshooting a 500 internal server error, try logging in to your website first and see if you’re locked out of the admin area.
To do this, go to https://yoursite.com/wp-admin and see if you can log in. If you can’t, the error is probably because of a plugin or theme that’s installed on your website.
4. Deactivate WordPress Plugins and/or Themes
If you can’t access the WordPress admin area, you might be looking at a plugin or theme error. Though this is a relatively simple fix, it can be a time-consuming one.
To start, you’ll have to use FTP to access your site’s files. There are many FTP clients available for both Windows and Mac, however for this example we’ll use FileZilla.
Click Download FileZilla Client.
After downloading the FileZilla software you’ll need to connect to your site.
- Host: your site’s exact URL
- Username: the username for your FTP account (usually the username used to log in to your cPanel)
- Password: the password for your FTP account (usually the password used to log in to your cPanel)
- Port: leave this blank unless your host specifies a certain port
Click Quickconnect.
You should see your local computer’s files in the left hand panel and your website’s files in the right hand panel.
On the right hand side of the FTP client, go to the wp-content folder and find the folder labeled plugins within it. Right click it and rename it something like plugins_deactivate. This will deactivate all the plugins on your WordPress website at once.
Next, go to your website and see if the error has been resolved. If it has, you know it’s a plugin on your website causing the internal server error.
Now that you can access the WordPress admin area, log into your site. Then, reactivate each plugin on your website one by one, refreshing every time you activate one. When the error returns, you know the plugin you just reactivated is the culprit.
Either delete the plugin and find an alternative, or contact the plugin author immediately to have it fixed.
And don’t forget to rename the plugins_deactivate folder back to plugins in your FTP client. This way all your site’s plugins remain active.
If deactivating your WordPress plugins doesn’t reveal the source of your 500 error, try following the same steps with the themes folder. Rename it and see if the problem is resolved. If so, change WordPress theme right away.
5. Check the .htaccess File
Installing plugins or themes, or making other changes to your WordPress website, may corrupt your .htaccess file and create an internal server error. Luckily, fixing it is pretty easy using your FTP client.
To start, find the .htaccess file and right click it, select View/Edit, and rename it something like .htaccess_old. Just make sure that whatever you rename the file to includes the “.htaccess” part so you don’t create another error on your site.
Check your website and see if the internal server error is gone. If it is, you’ve found the problem.
Log into the backend of your website, go to Settings > Permalinks and hit Save Changes. This will re-generate your .htaccess file and ensure your site is up and running without the internal server error.
6. Increase the PHP Memory Limit
If your website is using too much PHP memory (which is set by WordPress and your web host), you might need to increase it to stop a 500 internal server error from displaying on your site.
To increase the PHP memory limit of your website, start by opening your FTP client and finding the wp-config.php file. Right click on it, select View/Edit, and choose the default editor, which may be something like Notepad.
Right before the “Happy blogging” line of code, add this line of code:
define(‘WP_MEMORY_LIMIT’, ‘64’);
Save the file to your computer, find it on the left hand side of your FTP client, right click it, and select Upload. Make sure to overwrite the original file.
Refresh your FTP client and your website and see what happens. If the error is gone, you have figured out that exhausting the PHP memory is a problem.
Next you’ll need to pinpoint what is straining the memory and using so many resources. It could be a poorly coded plugin or a theme function. The best way to find out this information is to contact your hosting provider and have them check the server logs.
7. Check File Permissions
Files in your WordPress directory should be set to 755 or 644. If they are set to anything else, you could end up with a 500 error on your website.
To check your site’s file permissions, log in to your FTP client and look in your site’s directory under Permissions.
Notice how all the folders are set to 755 and everything else is set to 644. If any of them in your WordPress directory are wrong, right click on them and change them to the right number.
8. Reinstall WordPress
Remember when you originally set up your website and installed WordPress onto it? Well, although rare, sometimes the core WordPress files become corrupt and cause a 500 error on websites.
To fix this, you’ll need to replace the old files and download a fresh copy of WordPress onto your site.
Start by going to www.wordpress.org and downloading WordPress.
When you extract the zip file, you’ll find a folder labeled wordpress. Connect to your FTP client, find the wordpress folder and the files named wp-admin and wp-includes. Right click on both of them and select Upload.
When the prompt shows, select Overwrite. This will replace the wp-admin and wp-includes files on your website with fresh new files.
If this was the issue causing an error on your website, when you visit your site everything will be back to normal.
9. Contact Your Host
If you’ve tried all of the above-mentioned troubleshooting tips, and your 500 internal server error is still there, it’s time to reach out to your hosting provider. Your web host should be able to help you identify the issue and resolve, so long as they have a knowledgeable (and available) support team.
This is one of the reasons choosing a high-quality managed WordPress web host is so important. In times like these, you’ll need 24/7 support from WordPress experts if you want to minimize downtime and salvage any lost sales.
Final Thoughts
This is not an exhaustive list of troubleshooting tips for fixing the 500 internal server error on your WordPress website. However, these tips are easy enough for even beginners to follow when an issue pops up and takes your site down. Adding to that, these strategies can make solving an extremely vague website error easier to fix.
For help resolving other frustrating errors on your WordPress website, check out these articles for fixing the 502 Bad Gateway error and fixing the ‘503 Service Unavailable’ error.
Greg Winiarski says
The 500 error is a vague message but its purpose is to hide any debug and/or backtrace information.
If a whole error message would be shown it could be used as a potential attack vector for a hacker. Even knowing the full file path could be enough for a hacker if the files do not use a correct chmod, that being said the error itself is indeed annoying for a site owner or a developer :).
Wordpress Studio says
Amazing write-up! Thanks for giving excellent information on fixing the 500 internal server error!