WordPress errors can be frustrating, but most have straightforward fixes. This guide covers the most common WordPress issues and step-by-step solutions for each.
Symptoms
- White blank screen when visiting your website or wp-admin
- "500 Internal Server Error" message
- "Error establishing a database connection" message
- "This site is experiencing technical difficulties" notice
- "403 Forbidden" or "404 Not Found" on pages that should exist
- Slow loading or timeout errors
Causes
Most WordPress errors are caused by one or more of the following:
- Plugin conflicts — A plugin update or new plugin is incompatible
- Theme issues — A broken or incompatible theme
- PHP memory limit — WordPress runs out of allocated memory
- Corrupted .htaccess — URL rewrite rules are broken
- Database issues — Corrupted tables or connection problems
- Disk space full — Hosting account has exceeded its quota
- PHP version mismatch — WordPress or plugins need a different PHP version
Solution: White Screen of Death (WSOD)
A blank white screen with no error message, usually caused by a PHP fatal error.
Step 1: Enable Debug Mode
- Log in to cPanel → File Manager → navigate to
/publichtml/ - Edit
wp-config.php - Find the line
define('WPDEBUG', false);and change it to:
define('WPDEBUG', true);
define('WPDEBUGLOG', true);
define('WPDEBUGDISPLAY', false);
- Save the file and refresh your site
- Check
/wp-content/debug.logfor the actual error message
Step 2: Deactivate All Plugins
If you can't access wp-admin:
Via cPanel File Manager or FTP:
- Navigate to
/publichtml/wp-content/ - Rename the
pluginsfolder topluginsdisabled - Refresh your site — if it loads, a plugin was the cause
- Rename the folder back to
plugins - Reactivate plugins one by one to identify the culprit
Via WP Toolkit (WordPress plan):
- Open WP Toolkit → click your site card → Plugins tab
- Deactivate all plugins
Via Softaculous (Business plan):
- Open Softaculous → find your installation → click Manage
- Deactivate plugins from the plugins list
Step 3: Switch to a Default Theme
- In cPanel → File Manager, navigate to
/publichtml/wp-content/themes/ - Rename your active theme's folder (e.g.,
mythemetomythemedisabled) - WordPress will fall back to a default theme (Twenty Twenty-Four, etc.)
- If the site loads, your theme is the problem
Step 4: Increase PHP Memory Limit
Add this line to wp-config.php (before "That's all, stop editing!"):
define('WPMEMORYLIMIT', '256M');
Or add to .htaccess:
phpvalue memorylimit 256M
Solution: 500 Internal Server Error
Step 1: Check .htaccess
- In cPanel → File Manager →
/publichtml/ - Rename
.htaccessto.htaccessbackup - Refresh your site — if it loads, the
.htaccesswas corrupted - Log in to WordPress → Settings → Permalinks → click Save Changes (this regenerates
.htaccess)
Step 2: Check PHP Version
- In cPanel → MultiPHP Manager or Select PHP Version
- Ensure your domain is using PHP 8.0 or higher
- If you recently changed PHP versions, try reverting
Step 3: Check Error Logs
- Go to cPanel → Metrics → Errors
- Look for the most recent error entries — they'll point to the exact file and line causing the issue
Solution: "Error Establishing a Database Connection"
Step 1: Verify Database Credentials
- In cPanel → File Manager → edit
/publichtml/wp-config.php - Check these four values:
define('DBNAME', 'yourdatabasename');
define('DBUSER', 'yourdatabaseuser');
define('DBPASSWORD', 'yourdatabasepassword');
define('DBHOST', 'localhost');
- Verify they match what's in cPanel → MySQL Databases
Step 2: Check if MySQL Is Running
This is typically a server-side issue. If you've confirmed credentials are correct and it still doesn't work, contact Cynet support — the MySQL service may need a restart.
Step 3: Repair the Database
- Add this line to
wp-config.php:
define('WPALLOWREPAIR', true);
- Visit
https://yourdomain.com/wp-admin/maint/repair.php - Click Repair Database or Repair and Optimize Database
- After repair, remove the line from
wp-config.php(it's a security risk to leave it)
Solution: "This Site Is Experiencing Technical Difficulties"
This is WordPress's recovery mode message (WordPress 5.2+). Check your admin email for a recovery mode link that lets you log in and fix the issue. The email will identify which plugin or theme caused the error.
If you don't receive the email:
- Follow the WSOD steps above to deactivate plugins/themes
- Check
/wp-content/debug.logfor details
Solution: 403 Forbidden
- Check file permissions: Files should be
644, folders should be755. In cPanel → File Manager → right-click → Change Permissions - Check .htaccess: Rename it temporarily to test
- IP blocked by firewall: Your IP may be blocked — see Whitelist IP in Firewall
- ModSecurity rule: A firewall rule may be blocking a legitimate request — contact Cynet support
Solution: 404 Not Found on All Pages (Except Homepage)
- Log in to WordPress → Settings → Permalinks
- Without changing anything, click Save Changes
- This regenerates the
.htaccessrewrite rules - If that doesn't work, manually check
.htaccesscontains the WordPress rewrite block:
# BEGIN WordPress
<IfModule modrewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUESTFILENAME} !-f
RewriteCond %{REQUESTFILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
END WordPress
Prevention
- Back up before updating — Always create a backup before updating WordPress, plugins, or themes
- Use staging — Test major changes on a staging site first
- Keep everything updated — Run the latest versions of WordPress, themes, and plugins
- Remove unused plugins/themes — Less code means fewer potential conflicts
- Monitor disk space — Check cPanel → Disk Usage regularly
- Disable WPDEBUG on live sites — Only enable it temporarily when troubleshooting, then set it back to
false