Are you seeing 500 internal server error in WordPress?
Internal server error is one of the most common WordPress errors. Since the error doesn’t give any other information, many beginners find it quite frustrating.
In this article, we will show you how to easily fix internal server error in WordPress.

What Causes Internal Server Error in WordPress?
Internal server error is not specific to WordPress. It can happen with any website running on a web server. 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.

Internal server error in WordPress is often caused by plugin 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 admin area while the rest of the site works fine.
That being said, now let’s 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 FTP or File Manager app in your hosting account’s cPanel dashboard.
Once you connected, 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 visiting 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 page in WordPress admin area and click the save button without making any changes. This will generate a new .htaccess file for you with proper rewrite rules to ensure that your post pages do not return a 404 error.
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 internal server 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:
- Create a blank text file called php.ini
- Paste this code in there: memory=64MB
- Save the file
- 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 fixed the problem for you, then you have only fixed the problem temporarily. You still need to find the cause 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 more troubleshooting.
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 instructions in our guide 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 to the WordPress admin area and click on ‘Plugins’. Now you need to 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.
First you will need to visit the WordPress.org website and click on the Download button.

This will install WordPress zip file to your computer. You need to extract the zip file and inside it you will find a wordpress folder.
Next you need to connect to your WordPress website using an FTP client. Once connected go to the root folder of your website. It is the folder that has wp-admin, wp-includes, wp-content folders inside it.
In the left column open the WordPress folder on your computer. Now you need to select wp-includes and wp-admin folders and then right-click and select ‘Upload’.

Your FTP client will now transfer those folder to your server. It will ask you whether you would like to overwrite the files. Select ‘Overwrite’ and then select ‘Always use this action’.

Your FTP client will now replace your older WordPress files with newer fresh copies. If your WordPress files were corrupted, then this step will fix the internal server error for you.
Ask your Hosting Provider
If all methods fail to fix internal server error on your website, then it is time to get some more help. Contact your web hosting support team and they will be able to check the server logs and locate the root cause of the error.
If you want to continue troubleshooting on your own, then see our ultimate WordPress troubleshooting guide for beginners.
We hope this article helped you fix the internal server error in WordPress. You may also want to see our complete list of the most common WordPress errors, and our beginners guide on troubleshooting WordPress.
If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.
Jethro says
This worked! Thank you so much!
WPBeginner Support says
You’re welcome, glad our tutorial could help
Admin
Alex says
Amazing thanks so much
WPBeginner Support says
You’re welcome, glad you like our content
Admin
Gabriel Waju says
very helpful article…so glad WP Beginner exist…
WPBeginner Support says
Glad our articles can be helpful
Admin
Neil Iosson says
Phew. the .htaccess fix worked – I am very relieved after thinking I had just broken my previous website by adding WordPress.
WPBeginner Support says
Glad our article could help
Admin
Sim Tebe says
Worked like magic! Thank you so much for sharing
WPBeginner Support says
You’re welcome, glad our guide could help
Admin
Duncan McCormack says
re deleting .htaccess
So say…
You have permalink rewrites on, giving friendly page names.
So you do the rename thing, and then click Settingts, permanlinks, Save.
I assume this will stuff your menu? (Easily fixed I suppose).
To fix, I would have thought to re add the rewrite lines in .htacess and click the desired permalinks setting and save that?
WPBeginner Support says
By resaving the permalinks WordPress will recreate the htaccess file without the need for manually adding the information in the htaccess file.
Admin
Istiak Borsho says
Thanks A lot for sharing this Post… that problem was occurring back to back and I was unable to do anything…Not only This Problem a lot of problems is solved by watching and reading your posts and video… I could not stop myself to comment here and subscribe.
WPBeginner Support says
Thank you, glad our article could help
Admin
Wagner says
Thank you… deactivation of plugins solved the problem.
WPBeginner Support says
Glad our article could help and thanks for sharing what worked for you
Admin
Linda says
My homepage links are all returning 500 errors. My webhost says it’s because they don’t reference the WP subfolder under the domain name. I have code in my .htaccess that makes the site refer to it without the subfolder–written for me by the webhost, iirc. This hasn’t happened before. I changed themes recently–could it be that? Or is it the latest update? Pulling hair out over here!
WPBeginner Support says
If none of the methods in our article were able to fix the problem, you may want to try recreating the menu to recreate the links.
Admin
David Jones says
I moved a client site over from Singlehop to GoDaddy and for the most part it is fine. They were having problems with their old developer. Updated WordPress and plugins, got SSL going and everything looks great. I get a 500 error when I go to the site, not every time but sometimes. I use Wordfence for security. When I get the 500 error all I do is refresh the browser and the site comes up. It’s weird. Any thoughts on why this would happen intermittently and how to fix it?
WPBeginner Support says
You would want to reach out to the current host to see if there is a specific error they can see in their error logs.
Admin
Kyle says
You guys are the number one resource for everything WordPress in my book. Thanks for this useful post.
WPBeginner Support says
You’re welcome
Admin
Sandeep says
Hi,
Very nice article.
I tried your all the steps but still, I am getting 500 error. My menus are not working. Please help
From
Sandeep
WPBeginner Support says
You would want to reach out to your hosting provider for them to see if there is a specific reason in their error log.
Admin
marco says
thanks this saved my life!
WPBeginner Support says
Glad our guide could help
Admin
yikun says
Checking for Corrupt .htaccess File
Installing a plugin caused me this issue,Thanks it worked.
WPBeginner Support says
Glad our article could help
Admin
Curtis Bishop says
Thanks !!!!
WPBeginner Support says
You’re welcome
Admin
PS says
[Sat Mar 09 13:04:16 2019] [warn-ioncube] mmap cache can’t open /home/yyyyyy/public_html/xxxxxxx/wp-includes/post.php – Permission denied (pid 3708972)
This is the error I find in the wp admin error log. I tried all the above options, still it isn’t working.
Please help
WPBeginner Support says
If you’re still receiving the 500 error, did your hosting provider let you know of any errors on their end?
Admin
despasito says
It was a .htaccess error. thank you.
WPBeginner Support says
You’re welcome, glad our article could help
Admin
Ronnie says
Thank you verry much, Site up and running again
WPBeginner Support says
You’re welcome, glad our guide could help
Admin
Britt says
Thank you so much for this! I am new to the WordPress web world and this was extremely helpful in fixing my 500 error.
WPBeginner Support says
Glad it could help
Admin
Luis De Sousa says
Hi!
max-execution-time is also a determining factor in the appearance of the 500 internal error
WPBeginner Support says
Thanks for the reminder for anyone still having this issue
Admin
Nicholas says
Increasing memory “define( ‘WP_MEMORY_LIMIT’, ‘256M’ );” worked for me
WPBeginner Support says
Glad our recommendation could help
Admin
Joce says
I got this error while updating my theme and it’s still in the http 500 error
WPBeginner Support says
The error may be with the theme itself, you may want to change the theme using the method in our article here: https://www.wpbeginner.com/beginners-guide/beginners-guide-to-troubleshooting-wordpress-errors-step-by-step/
Admin
Alex Williams says
I was able to resolve the issue by changing my php version from 7.2 back to 5.4 which is what it probably was when I installed wordpress 3 or 4 years ago. Godaddy configures their serves to autoupdate a lotta stuff, including the php version and this can break an older wordpress website. As soon ass i downgraded the php version my wp-admin panel was accessible again!
WPBeginner Support says
We would normally recommend reaching out to your host before changing your PHP version and they can normally assist without the need to change the PHP version.
Admin
Jo says
Hi, I am getting the 500 Internal Server Error when I try to go on my admin page. I can look at my website go through the posts but can’t edit anything/add new posts etc.
This happened as I was in the middle of installing a new theme.
WPBeginner Support says
You can follow the steps in our article here: https://www.wpbeginner.com/beginners-guide/beginners-guide-to-troubleshooting-wordpress-errors-step-by-step/
to change your theme when you’re not able to log in in case this is due to the theme
Admin
Jacqui says
Hi,
I re-uploaded the core files and now my wordpress site is not displaying anything.
Kindly let me know of a solution to use to solve this problem.
WPBeginner Support says
You may want to make sure your wp-config.php file is connecting to the correct database. You can edit the file using the method in: https://www.wpbeginner.com/beginners-guide/how-to-edit-wp-config-php-file-in-wordpress/
Admin
Marcus Nash says
Same here. At first it was only admin issue. Now the whole site is server error 500. Will try your other link.
WPBeginner Support says
If that article does not help then you can also reach out to your hosting provider to see if they see any specific reason.
Jacqui says
Hi,
I tried re-uploading the core files from a new wordpress download and now my site is not displaying anything.
Kindly let me know of a solution to solve this problem.
WPBeginner Support says
You would want to check your wp-config.php to ensure your site is connected to the correct database. Our guide for how to edit the file can be found here: https://www.wpbeginner.com/beginners-guide/how-to-edit-wp-config-php-file-in-wordpress/
Admin
Raj says
Hi very good article
WPBeginner Support says
Thank you
Admin
Miki Chambiki says
After update to WordPress 5.0.2 my page showed the same error:
(when logging in backend or accessing a password-protected article)
Internal Server Error
Solution:
DEactivate PHP boost !!! And it works again
(Provider: Strato, PHP version: 7.2)
WPBeginner Support says
Thanks for sharing your solution to the error
Admin
Tafadzwa Chingwe says
Thanks was fustrating for real, changed htaccess to htaccessold and worked like a charm.
WPBeginner Support says
Glad our article could help
Admin
Thisara says
Thank you very much, it was the plug ins in my case, once i deactivate it i could log in to the wp-admin, and it prompted to update the database before log in, it took only few seconds, and afterthat re activated the plug-ins and now everything works fine. thank you again…
Josh says
Deactivating all the plugins by renaming the file worked for me. Thanks!
Michal says
Thanks for this. In my case, apparently some antivirus software of my hosting provider identified some core files as viruses (I have no idea if true, maybe I was hacked) and changed their names to “.VIRUS” . Replacing the wp-include worked.
Glenn Watson says
Thanks so much for this – the php.ini memory tip solved the problem, and it’s so simple.
Moosa says
There was a problem with the plugins folder. So, when I renamed it the problem was solved.
Thanks Alot.
Nicolas V says
Thank you very much !!!
very clear explanations.
i still have an issue : impossible to edit a page , the edit page opens and after a few seconds i get a message error…I will investigate this now…Anybody had this problem ?
Ali Raza says
Hi,Am too worried about my site, recently i made changes for adding network setup for multisite in my wordpress account using exampp and i made changes to wp-config.php and .htaccess without holding any backup. and now this changes struck me out from my site and admin panel, and error is showing ” 500 enternal error” or when i saw this error, i reback my changes using youtube tutorials, and i changes wp–config and .htaccess back to it’s initial states. but now not at all. I even can’t accessing to wordpress or my admin panel, or anyhing else. Error is showing “”Server internal Error”” Please help me Urgently, i have too short time, it’s my Project and i have to submit it within 2 days. please help me out Please, I’m looking forward to hear from you. Thanx you a lot
WPBeginner Support says
Hi Ali,
The easiest way would be to restore WordPress backup. If you didn’t have a backup solution, then you can try steps in our WordPress troubleshooting guide, it will help you figure out what’s causing the issue.
Admin
David Martin says
In my case the problem was a child theme !! thx a lot
Kamaljit Sandhu says
For me fix the permissions for WP-config.php file solve the issue. I accidentally set up file permission for WP-config 600 and the change into 664.
Chhunleang Say says
I have got 500 internal server error after I activated new theme . Please help. I use WordPress
drNurmemet says
thank you! my website all pages not working accept homepage. the admin page is working. One of my plugins is causing this mistake (plugin name: ads inserter). I deactivated it, the website is working.
Terry says
This was very helpful. I had my domain forwarded, and then modified it to an add-on, so my htaccess file was attempting to route to a subdirectory that was no longer needed. Once I removed that, it worked perfectly. Thanks for pointing me in the right direction.
Rajib Chowdhury says
Brilliant. Thanks A lot
Cem Sayar says
In my case it was php 7 so i had to downgrade php to version 6
Dominic says
May I just add an even simpler one to try first? I use Updraft to back up my site. It has simply filled up my quota. I deleted a load of older backups and it sprang to life.
Alicja says
whereare all those files like .htacces ? should i have it omewhere on my computer? because i edit my website wfrom different computers.
Mark says
Thanks! It worked by deactivating one plugin.
Loupida says
This article solves my issue. Thx a lot.
Jeff PInterParsons says
Thank you, thank you, thank you!!
Micaela says
THANK YOU!!!
This is the best WP website. You saved me TONS of headaches. Thanks so so much! Reuploading wp-admin and includes did the trick for me.
You guys RULE!!!!
prashanth says
I directed to this page from my theme providers support forum.
I had the following issue.
1. HTTP error while uploading an image to my blog post.
2. When I tried to upload via Media library I got the “500 Internal error”
You tips under “Increasing the PHP Memory Limit” sorted out the issue.
I created the file as instructed and uploaded.
Thanks.