Fix: 500 Internal Server Error on cPanel Hosting

Estimated reading: 2 minutes

A 500 Internal Server Error means something went wrong on the server side. It’s one of the most common errors on shared hosting and is almost always fixable without contacting support.

Cause 1: Corrupted .htaccess File

A broken .htaccess file is the #1 cause of 500 errors on WordPress sites. Fix it by resetting it:

  • Go to cPanel → File Manager
  • Navigate to your site’s root folder (usually public_html)
  • Find .htaccess, rename it to .htaccess_old
  • Visit your site — if it loads, the .htaccess was the problem
  • In WordPress, go to Settings → Permalinks and click Save Changes to regenerate a clean .htaccess

Cause 2: PHP Memory Limit Too Low

Add this line to your .htaccess or wp-config.php to increase the PHP memory limit:

php_value memory_limit 256M

Or in wp-config.php (above the /* That's all, stop editing! */ line):

define( 'WP_MEMORY_LIMIT', '256M' );

Cause 3: Faulty Plugin or Theme

A recently installed or updated plugin/theme can break your site — this is especially common after a WordPress core update. To identify it:

  • Via File Manager, rename your plugins folder: public_html/wp-content/pluginsplugins_old
  • If the site loads, a plugin is the culprit — rename it back and deactivate plugins one by one
  • To test the theme, rename your active theme folder inside wp-content/themes/ — WordPress will fall back to a default theme

Cause 4: PHP Syntax Error

If you recently edited a PHP file manually, a typo can cause a 500 error. Enable WordPress debug mode to see the exact error. Add these lines to wp-config.php:

define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );

Then check wp-content/debug.log for the exact error. If the cause turns out to be a PHP error rather than a plugin conflict, see our guide on PHP Fatal Errors in cPanel. Disable debug mode after fixing by setting WP_DEBUG back to false.

Still Getting a 500 Error?

Check your cPanel → Errors log for the exact message, then contact Veerhost support at veerhost.com/support with the error details.

  • Limited-Time Offer

WordPress Hosting — Just $1/month for 12 months

Only 37 spots left

Get WordPress-ready hosting with free SSL, fast NVMe storage, malware protection, and 24/7 expert support—everything you need to launch and keep your website running smoothly.

12-month term • New customers only • Limited availability

Launchpad