Publishing your WordPress website to expand your global reach is a super exciting moment. However, that excitement can quickly diminish if you see WordPress error 500 when your page loads.
A 500 Internal Server Error on our WordPress website can leave a negative impression on our audience, and we must quickly find a solution.
Luckily, you are not alone. This error is a common problem in WordPress. With a bit of investigation, you can quickly resolve the issue. In this article, I’ll show you why your site “is currently unable to handle this request” and how to get rid of this message.
Table of Contents
- What causes the 500 errors in WordPress?
- HTTP Error 500 in WordPress: What does “is currently unable to handle this request” mean?
- How to Fix the 500 Internal Server Error in WordPress
- If All Else Fails
What causes the 500 errors in WordPress?
When you visit a website, your browser requests a web host, asking it to send you a web page. If something is wrong with your website that prevents the hosting server from delivering that page to your browser (i.e., it cannot handle the request), it will send you an error message instead. This is a 500 Internal Server Error.
Many things can cause an HTTP 500 error, but it’s probably not an issue with the host server. It's more likely that the host can’t retrieve the contents of your WordPress site for some reason.
Check out the most common causes of a 500 Internal Server Error.
Faulty Plugins or Themes
WordPress is best known for its customizable abilities. Developers can create custom themes or plugins to help you make your website look and function exactly as you want.
The problem is that conflict will arise when multiple code elements are integrated from different sources. A 500 internal server error can be caused by the plugins or themes clashing with each other.
Broken .Htaccess Files
For your website to work properly, it depends on configurations. That’s where the .htaccess file comes in handy. The .htaccess file houses important configurations linked to your server. If the configurations aren’t set up correctly, this can lead to a WordPress error 500.
PHP Memory Limit Being Exceeded
PHP is a programming language used on the backend of WordPress web pages. Developers can customize web pages even more using PHP. The problem is there is a limit, and exceeding it can lead to WordPress 500 error. Once you reach your limit, you will get an error and must resolve the error to move forward.
Occasionally, the issue might also come from your hosting server. If the issue is coming from your hosting server, contact your hosting provider's support team.
HTTP Error 500 in WordPress: What does “is currently unable to handle this request” mean?
Due to the 500 internal server error caused by an issue on the server side, your users will have no way of fixing it themselves.
The vagueness of a 500 error makes it pesky to deal with — the good news is that trying a few repairs will almost certainly solve your problem. Here's what to do:
How to Fix the 500 Internal Server Error in WordPress
- Back up your website.
- Enable the WordPress debugging feature.
- Deactivate your plugins.
- Disable your currently active theme.
- Check your .htaccess file.
- Check your PHP memory limit.
- Replace your WordPress core files.
1. Backup your website.
Fixing your issue will require changing some things on your site, including alterations to your plugins, themes, and possibly your WordPress core files. Even though your site is down, backup your files just in case you lose data and need to backtrack.
Save your backup in a safe location. Hopefully, you won’t need it, but it's good to have.
2. Enable the WordPress debugging feature.
WordPress includes a handy debugger to help you troubleshoot issues like this. When something goes wrong, the error log will report the specifics of the problem.
The debugger is disabled by default. First, enable it with the steps below:
1. Access your website via FTP.
2. Open your public_html folder or whichever directory contains your WordPress files.
3. Locate and right-click the wp-config.php file, then choose View/Edit.
4. With the file open, scroll to the bottom of the file and paste the following line of code:
define( ‘WP_DEBUG’, true );
This code tells WordPress to log errors on your website.
5. Save your changes and reload your website. On the error screen, you might see a more detailed report that identifies the source of the issue — this could point to a specific plugin or file. If the source of the problem is still unclear, read on.
Once you’re finished using the debugger, remember to disable it by removing the code you added above and saving the file, being careful not to change anything else.
3. Deactivate your plugins.
A likely cause of this error is that one of your plugins (or a combination of plugins) is causing your backend to malfunction. The best way to test this is by deactivating all your plugins, then narrowing down to the culprit(s).
If you can access the administrator account, try the following:
1. From the dashboard, select Plugins > Installed Plugins.
2. Check the box next to Plugin to select all your plugins.
3. Choose Deactivate from the Bulk Actions drop-down menu, then click Apply.
4. Refresh your site. If you no longer see the error, start activating each plugin one by one and reloading your website after each activation to identify the faulty plugin.
If you don’t have access to the administrator controls, you will need to connect to your server using the file transfer protocol (FTP). After connecting, you’ll see all your files for your WordPress website. Follow these steps:
1. Open the public_html folder (or wherever your WordPress files are stored on your server), then open the wp-content folder.
2. Rename your plugins folder “plugins_old.”
3. Refresh your website. If your site works, rename your plugins_old folder back to “plugins.”
4. Within the plugins folder, rename each plugin folder one at a time until you find the plugin that causes the bug.
If you find a specific plugin causing the error, replace the plugin or notify the plugin developer.
4. Disable your currently active theme.
If plugins aren’t the issue, your WordPress theme might be, especially if it comes from a third-party developer. To check this, start by temporarily replacing your current theme with a default WordPress theme. If you can access the administrator controls, follow these steps:
1. Select Appearance > Themes from the WordPress dashboard.
2. Activate any default WordPress theme, such as Twenty Nineteen.
3. Check your website for the HTTP 500 error message.
If you can’t get into the admin account, you’ll need to use an FTP client to access the website. Then, do the following:
1. Open the public_html folder (or wherever your WordPress files are stored), then open the wp-content folder.
2. Open the themes folder and look for your active theme folder.
3. Add “_old” to the end of the name of your active theme folder. This disables the theme.
4. Refresh your website. If it works, you’ve found the problem. Contact the theme developer about the error and ask for the latest version of the theme.
5. Check your .htaccess file
The next likely cause of a 500 Internal Server Error in WordPress is a corrupted .htaccess file, located in the root directory of your website files (usually public_html). This file contains various directions for your host server to follow, like allowing password protection for web pages and redirecting URLs.
Like other source files, any typo or incorrect modification in .htaccess will break the code and potentially your site. Follow these steps to make sure it’s working.
1. Connect to your server with FTP or your cPanel dashboard.
2. Open your public_html folder (or whichever folder is your site’s root directory).
3. Find the .htaccess file. Your server might hide this file by default. In this case, change the view settings to reveal it. Rename the .htaccess file to something like .htaccess_test.
4. Refresh your website. If you no longer see the HTTP 500 error, this means .htaccess is the source of the error. If you still see a 500, .htaccess is not the issue, and you can skip to the next step, checking your PHP memory limit.
5. To repair .htaccess, you just need to replace it with a new one. From your WordPress dashboard, select Settings > Permalinks.
6. Click the Save Changes button at the bottom of the page. This replaces the old .htaccess file.
6. Check your PHP memory limit.
Your site’s PHP memory limit is allotted by your WordPress installation and by your host. If your site exceeds its memory capacity, this throws a 500 Internal Server Error. To increase your memory limit, try these steps:
1. Access your server files with FTP or cPanel.
2. Navigate to your site’s root directory and find the file wp-config.php. This file contains the rule that determines your memory limit. Make a copy of this file as a backup.
3. Open wp-config.php and search for the code “WP_MEMORY_LIMIT.” If you find it in the file, replace the value in this rule with ‘64M’. If not, paste this line of code at the bottom of the file:
define(‘WP_MEMORY_LIMIT’, ‘64M’)
4. Refresh your website. If the error is gone, you’ve found the issue.
This is just a temporary fix. If you’ve exceeded your memory limit, you need to determine why. It’s possible your site has grown too large, in which case you should upgrade your hosting plan to accommodate your storage needs.
However, another potential cause is a plugin or theme that is depleting your memory. To check this, contact your hosting provider and request a report of resource usage, or find this information yourself if your host has it accessible to you.
7. Replace your WordPress core files.
In some instances, your WordPress core files may have been improperly modified by a plugin or theme.
If you’ve gotten this far with no fix, it might be worth it to swap out your current core files with clean, unmodified ones. While you’ll still have your site data after this change, you might need to re-toggle some original settings.
To replace WordPress core:
1. Download WordPress and unzip it on your device.
2. In the main WordPress folder, delete wp-config-sample.php and the wp-content folder. If you don’t delete these files, they’ll overwrite your current site data.
3. Use your FTP client to place the new WordPress core files on your hosting server and replace the current files.
If All Else Fails ...
As a last resort, reach out to your hosting provider support — the problem may actually be on your server in this case. Explain the troubleshooting you’ve conducted, and they’ll review your server configuration and logs to track down the cause. It’s in situations like this where quality customer service from your hosting provider really shines through.
Internal server errors are so frustrating because they’re ambiguous and sometimes even misleading. Still, by following the steps above, you’ll hopefully come out of it with minimal impact to your WordPress website and your reputation.
One more note: Be cautious about these types of errors when changing your website. We highly recommend testing out your new themes, plugins, and updates in a staging site. This way, if you get a 500, your visitors won’t see it on your live site, and you won't be scrambling for a fix.