Beginner's Guide for WordPress - Start your WordPress Blog in minutes.
Choosing the Best
WordPress Hosting
How to Easily
Install WordPress
WordPress Plugins
View all Guides

How to Fix the Internal Server Error in WordPress

Last updated on by
Special WordPress Hosting offer for WPBeginner Readers
How to Fix the Internal Server Error in WordPress

If you have been surfing the web for more than a year, then you probably have seen the HTTP 500 Internal Server Error at least a few times. Internal Server Error is one of the common WordPress errors that can put a WordPress beginner in panic mode. Panic is the worst reaction you can have. Take a deep breath and know that others before you have had this issue as well. We have fixed errors like the internal server error, error establishing database connection, white screen of death, and others many times for our users. We can assure you that they are all fixable. It just requires a little bit of patience. In this article, we will show you how to fix the internal server error in WordPress by compiling a list of all possible solutions in one place.

Internal Server Error in WordPress

Why do you get Internal Server Error in WordPress?

Internal server error is not specific to WordPress, and it can happen with anything else running on your server as well. Due to the generic nature of this error, it does not tell the developer anything. Asking how to fix an internal server error is like asking your doctor how to fix the pain without telling them where the pain is. Having that said, internal server error in WordPress is often caused by plugin and/or theme functions. Other possible causes of internal server error in WordPress that we know of are: corrupted .htaccess file and PHP memory limit. We have also heard internal server error only showing up when you are trying to access the administrator area while the rest of the site works fine.

Lets take a look at how to go about troubleshooting the internal server error in WordPress.

Video Tutorial

If you don’t like the video or need more instructions, then continue reading.

Checking for Corrupt .htaccess File

The first thing you should do when troubleshooting the internal server error in WordPress is check for the corrupted .htaccess file. You can do so by renaming your main .htaccess file to something like .htaccess_old. To rename the .htaccess file, you will need to login to your site using the FTP. Once you are in, the .htaccess file will be located in the same directory where you will see folders like wp-content, wp-admin, and wp-includes.

Once you have renamed the .htaccess file, try loading your site to see if this solved the problem. If it did, then give yourself a pat on the back because you fixed the internal server error. Before you move on with other things, make sure that you go to Settings » Permalinks and click the save button. This will generate a new .htaccess file for you with proper rewrite rules to ensure that your post pages do not return a 404.

If checking for the corrupt .htaccess file solution did not work for you, then you need to continue reading this article.

Increasing the PHP Memory Limit

Sometimes this error can happen if you are exhausting your PHP memory limit. Use our tutorial on how to increase PHP memory limit in WordPress to fix that.

If you are seeing the internal server error only when you try to login to your WordPress admin or uploading an image in your wp-admin, then you should increase the memory limit by following these steps:

  1. Create a blank text file called php.ini
  2. Paste this code in there: memory=64MB
  3. Save the file
  4. Upload it into your /wp-admin/ folder using FTP

Several users have said that doing the above fixed the admin side problem for them.

If increasing the memory limit fix the problem for you, then you have fixed the problem temporarily. The reason why we say this is because there has to be something that is exhausting your memory limit. This could be a poorly coded plugin or even a theme function. We strongly recommend that you ask your WordPress web hosting company to look into the server logs to help you find the exact diagnostics.

If increasing the PHP memory limit did not fix the issue for you, then you are in for some hard-core trouble shooting.

Deactivate all Plugins

If none of the above solutions worked for you, then this error is most likely being caused by a specific plugin. It is also possible that it is a combination of plugins that are not playing nice with each other. Sadly, there is no easy way to find this out. You have to deactivate all WordPress plugins at once.

Follow the following tutorial on how to deactivate all WordPress plugins without WP-Admin.

If disabling all plugins fixed the error, then you know it is one of the plugins that is causing the error. Simply go through and reactivate one plugin at a time until you find the one that caused the issue. Get rid of that plugin, and report the error to the plugin author.

Re-uploading Core Files

If the plugin option didn’t fix the internal server error, then it is worth re-uploading the wp-admin and wp-includes folder from a fresh WordPress install. This will NOT remove any of your information, but it may solve the problem in case any file was corrupted.

Ask your Hosting Provider

If nothing works, then you need to get in touch with your hosting provider. By looking at the server logs, they should be able to get to the bottom of things.

These are all the possible solutions that may fix the internal server error problem in WordPress. Did any of the above solutions fixed the problem for you? If so, then please let us know in the comments. Did you encounter the internal server error issue in the past? how did you fix it? If you know of a fix that is not listed in the article above, then please contribute in the comments below. We will make sure to keep the article up to date with any new advice from the users.

Editorial Staff at WPBeginner is a team of WordPress experts led by Syed Balkhi. Page maintained by Syed Balkhi.

WPBeginner's Video Icon
Our HD-Quality tutorial videos for WordPress Beginners will teach you how to use WordPress to create and manage your own website in about an hour. Get started now »


  1. Julian says:

    Thank you! Deactivating the plugins vía PhpMyAdmin worked for me!

  2. Monayam Ahmad says:

    Not work for me. I face this problem when I want to customize my theme. Everything goes well. But to do ‘customize’ I get this error. I don’t why.

  3. Ben says:

    Thank you very much for this very helpful article !
    The htaccess renaming worked for me ! Yeah !

  4. Joe says:

    Thank you so much! I was encountering endless Internal Server Errors for about 36 painful hours, and deleting/reuploading my theme via FTP then renaming the .htaccess file SAVED ME SO MUCH!
    You are a life saver.

  5. oladayo says:

    Thank you very much. it was the option of re-uploading the wp-admin and include folders that saved me after about 3weeks of troubleshooting.

  6. Rod Salm says:

    For me, it was the permissions setting for the entire directory. It needed to be 750. Soon as I changed that in the File Manager in cPanel it was back up.

    I didn’t figure that out on my own.


  7. Giorgio says:

    Thank you so much! You save me from an heart attack…
    Simply I have renamed, via FTP, the .htaccess in .htaccess_old, and WP goes on.

    This is the new .htaccess, created as you suggested:

    # BEGIN WordPress

    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ – [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]

    # END WordPress

    This is the .htaccess that I find in my FTP and renamed in .htaccess_old:

    ## BEGIN WordPress<
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ – [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]

    # END WordPress

    I don’t know what had modify the file. Someone have an answer?
    Thank you!

  8. Oderinde Taiwo Martins says:

    I just want to say a big thank you to you guys. You saved my day with this article. I’m bookmarking this website now as I know I will have to come back and learn more from your resources. Thanks a bunch.

  9. Rionize says:

    tkank’s guys every thing is on .htaccess file and pemalink in word press check it out!!!

  10. Petrus Rex says:

    I had this issue after a fresh install of WordPress. I would get this error specifically when accessing the plugins from my dashboard it turned out to be a corrupt .htaccess file but had to be handled server side by my web host. I’m running on Arvixe.

  11. Ivan Aliku says:

    I must give kudos to the moderators and content developers of this blog. I’ve not regreted knowing this website for one bit. The .htaccess solved the problem for me with ease. Keep up the good work.

  12. Being Khan says:

    I can’t rename it even.

  13. Usman Aslam says:

    Thanks a lot, it was due to a bad plugin I couldn’t login, Wouldn’t have been possible without reading this. Great work … !

  14. Larah31 says:

    Thanks man.. You’re the best

  15. Cory says:

    Thanks, renaming .htaccess to .htaccess.old did the trick :).

  16. Mitch says:

    I’ve got a weird one. My Internal Server Errors only happen on “Posts”, and Not on “Pages”. The host just updated the PHP version as well as the memory limit, and I re-uploaded the wp-admin and wp-admin files. No luck. Any other ideas?

  17. josh says:

    thanks this was helpful

  18. mark says:

    .htaccess did the thing for me. Thanks!

  19. Juan mejia says:

    Thanks!!!! htaccess in my case.

  20. Cachi says:

    Thanks, It solved in my case. Just delete de .htaccess , reload, and a new .htaccess file was generated and the site works !

    Thank you again

  21. Rochelle says:

    I have been in touch with my hosting provider two times and they have no idea what it is. They switched databases, thought it was hacked, and the other guy couldn’t figure out why I was having problems at all.

    Someone pointed me to your article (thank heavens) I did the htaccess file change and it helped it for two minutes. Then I did the php memory thing and that helped for a few minutes as well, then back to the internal server error. I’m currently working on trying to figure out if it’s a plugin. If that doesn’t help… then I’ll do the core files. And then after that… I have no idea. I guess I’ll try my hosting provider again.

    Would switching hosts be of any help at all?

  22. Adela says:

    Thank you so much for so complet information! :)
    It was a plugin problem for me, impossible to find without your help!

Add a Comment

We're glad you have chosen to leave a comment. Please keep in mind that all comments are moderated according to our comment policy, and all links are nofollow. Do NOT use keywords in the name field. Let's have a personal and meaningful conversation.