Whilst there are many external causes for WordPress returning a 500 Internal Server error the most common cause is a corrupt .htaccess resulting in the permalink rules breaking.

This can sometimes occur if you’ve moved your WordPress website to a new domain name, or sub domain.

Steps to resolve 500 Internal Server Error

  • Use your FTP app or File Manager to find your .htaccess file. (make sure show all hidden files is enabled)
  • Rename your .htaccess file to .htaccess.bak.
  • Login to your WordPress admin area.
  • From the left menu, click Settings > Permalinks.
  • Check the permalink settings are as you need.
  • Click the Save Settings button.
  • Go to your browser and reload your site to see if the 500 Internal Server error is resolved.

If you have extra rules in your .htaccess.bak file copy the old rules back to your new .htaccess. We recommend saving and checking your site often to identify any problem rules in your .htaccess which could be triggering the 500 Internal Server Error.

Once you’ve copied over all your old rules you may delete the .htaccess.bak.

If you’re still getting a 500 Internal Server check your PHP Memory settings and enable/disable any plugins. Checking your site after each plugin is disabled to see if this has resolved the 500 Internal Server Error.

Disabling a plugin using FTP and File Manager

If you see a 500 Internal Server Error when attempting to reach your WordPress Dashboard you can disable your entire plugin folder by renaming the folder and creating a new empty folder.

  • Use your FTP app or File Manager to login to your web space.
  • Locate /wp-content/plugins folder.
  • Rename the folder to plugins_bak.
  • Create a new folder in /wp-content/ called plugins.
  • Go to your browser and reload your site to see if the 500 Internal Server error is resolved.

Disabling a plugin using WordPress Dashboard

  • Login to WordPress Dashboard
  • Click Plugins
  • Click Deactivate
  • Reactivate each plugin on its own, refreshing your website in your browser to see if the 500 Internal Server Error is resolved.