How to Fix Common WordPress Errors

Diagnose and fix the most common WordPress errors including the white screen of death, 500 internal server error, database connection errors, and more.

Troubleshoot 5 min read Updated 2026-03-01 Intermediate Cynet Support

Quick Answer

Most WordPress errors are caused by plugin conflicts, theme issues, or resource limits. Start by deactivating all plugins (via cPanel or FTP if locked out), switching to a default theme, and checking your error logs in cPanel → Metrics → Errors.

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

  1. Log in to cPanel → File Manager → navigate to /publichtml/
  2. Edit wp-config.php
  3. Find the line define('WPDEBUG', false); and change it to:
define('WPDEBUG', true);
define('WPDEBUGLOG', true);
define('WPDEBUGDISPLAY', false);
  1. Save the file and refresh your site
  2. Check /wp-content/debug.log for the actual error message

Step 2: Deactivate All Plugins

If you can't access wp-admin:

Via cPanel File Manager or FTP:

  1. Navigate to /publichtml/wp-content/
  2. Rename the plugins folder to pluginsdisabled
  3. Refresh your site — if it loads, a plugin was the cause
  4. Rename the folder back to plugins
  5. Reactivate plugins one by one to identify the culprit

Via WP Toolkit (WordPress plan):
  1. Open WP Toolkit → click your site card → Plugins tab
  2. Deactivate all plugins

Via Softaculous (Business plan):
  1. Open Softaculous → find your installation → click Manage
  2. Deactivate plugins from the plugins list

Step 3: Switch to a Default Theme

  1. In cPanel → File Manager, navigate to /publichtml/wp-content/themes/
  2. Rename your active theme's folder (e.g., mytheme to mythemedisabled)
  3. WordPress will fall back to a default theme (Twenty Twenty-Four, etc.)
  4. 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

  1. In cPanel → File Manager → /publichtml/
  2. Rename .htaccess to .htaccessbackup
  3. Refresh your site — if it loads, the .htaccess was corrupted
  4. Log in to WordPress → Settings → Permalinks → click Save Changes (this regenerates .htaccess)

Step 2: Check PHP Version

  1. In cPanel → MultiPHP Manager or Select PHP Version
  2. Ensure your domain is using PHP 8.0 or higher
  3. If you recently changed PHP versions, try reverting

Step 3: Check Error Logs

  1. Go to cPanel → MetricsErrors
  2. 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

  1. In cPanel → File Manager → edit /publichtml/wp-config.php
  2. Check these four values:
define('DBNAME', 'yourdatabasename');
define('DBUSER', 'yourdatabaseuser');
define('DBPASSWORD', 'yourdatabasepassword');
define('DBHOST', 'localhost');
  1. 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

  1. Add this line to wp-config.php:
define('WPALLOWREPAIR', true);
  1. Visit https://yourdomain.com/wp-admin/maint/repair.php
  2. Click Repair Database or Repair and Optimize Database
  3. 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:

  1. Follow the WSOD steps above to deactivate plugins/themes
  2. Check /wp-content/debug.log for details

Solution: 403 Forbidden

  • Check file permissions: Files should be 644, folders should be 755. 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)

  1. Log in to WordPress → Settings → Permalinks
  2. Without changing anything, click Save Changes
  3. This regenerates the .htaccess rewrite rules
  4. If that doesn't work, manually check .htaccess contains 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
WordPress error troubleshoot white screen 500 error database plugin conflict

Need our team to handle this?

Need WordPress, Joomla, or another web application installed? Submit a request and we'll set it up for you.

Was this article helpful?

Not sure which hosting plan is right for you?

Get a personalized recommendation in under 60 seconds.

Find the Right Plan