A 500 Internal Server Error means something went wrong on the server side. In WordPress, this is usually caused by a corrupted .htaccess file, a plugin conflict, or a PHP memory issue.
Step 1 — Regenerate the .htaccess file
A corrupted .htaccess is the most common cause.
- In cPanel File Manager, navigate to public_html.
- Enable Show Hidden Files in Settings.
- Rename .htaccess to .htaccess_old.
- Reload your website. If it loads, the .htaccess was corrupted.
- Log in to WordPress admin and go to Settings → Permalinks.
- Click Save Changes without changing anything. WordPress will create a fresh .htaccess file.
- Delete .htaccess_old.
Step 2 — Deactivate all plugins
- In File Manager, go to public_html/wp-content/plugins.
- Rename the folder to plugins_disabled.
- Reload your website. If it loads, reactivate plugins one by one to find the culprit.
- Rename the folder back to plugins when done.
Step 3 — Increase PHP memory limit
- Open wp-config.php in File Manager.
- Add this line before /* That's all, stop editing! */:
define('WP_MEMORY_LIMIT', '256M'); - Save and reload.
Step 4 — Check PHP error logs
- In cPanel, go to Metrics → Errors.
- Review the most recent error entries. They will point to the specific file and line number causing the 500 error.
Step 5 — Re-upload WordPress core files
If none of the above worked, a corrupted WordPress core file may be the cause.
- Download a fresh copy of WordPress from https://wordpress.org/download.
- Extract the ZIP file.
- Upload all files except the wp-content folder and wp-config.php to your public_html folder, overwriting existing files.