The 500 Internal Server Error is a catch-all server fault that hides the real cause. On WordPress it is most often a broken .htaccess file, a plugin conflict, or exhausted memory.
Reset the .htaccess File
A corrupted rewrite file is the most common trigger.
- In cPanel File Manager, enable Show Hidden Files.
- Rename
.htaccessto.htaccess_old. - Reload the site. If it works, the file was the problem.
- Recreate clean rules by saving Permalinks in Settings > Permalinks, or paste the default block:
# BEGIN WordPress
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress
Check Plugins and Memory
- Rename
wp-content/pluginstoplugins_offto disable all plugins, then reload. - If that fixes it, restore the folder and re-enable plugins one by one.
- If memory is the cause, add
define( 'WP_MEMORY_LIMIT', '256M' );towp-config.php.
Read the Error Log
Open Metrics > Errors in cPanel, or check the error_log file in your site directory. It usually names the exact file and line that failed, which removes the guesswork.
Switching to a supported PHP version under Select PHP Version also clears 500 errors caused by deprecated code.