Troubleshooting - WordPress 500 Internal Server Error: Fix Guide
Resolve WordPress 500 internal server error. Common causes and step-by-step fixes for .htaccess, PHP, plugins, and memory issues.
The Problem
A 500 error means something broke on the server, but it doesn't tell you what. Your site is down with a generic error.
The Solution
We check the common causes systematically-.htaccess corruption, PHP errors, memory exhaustion, and server misconfiguration.
.htaccess Issues
A corrupted or misconfigured .htaccess is the most common cause of 500 errors on WordPress.
- Rename .htaccess to .htaccess_old via FTP
- If site loads, regenerate .htaccess from Settings > Permalinks
- Check for custom rules that may be invalid
- Verify no syntax errors in custom redirects
- Ensure mod_rewrite is enabled on server
PHP Memory & Limits
PHP hitting memory limits or execution time limits causes 500 errors.
- Increase memory_limit in php.ini or wp-config.php
- Increase max_execution_time for long operations
- Check post_max_size and upload_max_filesize
- Verify PHP version compatibility
- Check for memory leaks in plugins
Plugin/Theme Conflicts
Bad code in plugins or themes can crash PHP and cause 500 errors.
- Disable all plugins via FTP (rename folder)
- Switch to default theme if plugins aren't the issue
- Check for recent updates that correlate with error
- Enable error logging to identify specific file/line
- Test in troubleshooting mode (Health Check plugin)
Server Configuration
Sometimes the issue is server-side, not WordPress itself.
- Check server error logs (Apache/Nginx)
- Verify file permissions (644/755)
- Check disk space availability
- Verify PHP-FPM or mod_php is running
- Contact host for server-side issues
Quick Wins
Start with these high-impact, low-effort improvements.
- 1 Rename .htaccess via FTP and test
- 2 Add define('WP_MEMORY_LIMIT', '512M'); to wp-config.php
- 3 Check PHP error log for specific error
- 4 Rename plugins folder to disable all plugins
- 5 Verify PHP version meets WordPress requirements
Tools - Recommended tools
These tools help diagnose and fix the issues covered in this guide.
FAQ - Common questions
Answers to questions we often hear about this topic.
500 error only happens sometimes.
Intermittent 500 errors often indicate memory exhaustion under load, PHP timeout on heavy operations, or server resource limits. Check error logs at the exact time of failures.
500 error only on wp-admin.
Admin-only 500 errors usually point to plugin conflicts that only load in admin, or database issues with options/transients. Try disabling plugins via FTP.
Need help implementing this?
We can handle this for you-properly configured, tested, and maintained.
Want us to handle this for you?
Save time and get it done right. We implement these optimizations for clients every day.
Get expert helpLet's build something together
Tell us about your project and we'll figure out how we can help.
