A 502 Bad Gateway error can be frustrating, especially when you have no idea what caused it. The good news? It’s almost always fixable with a few systematic checks. This step‑by‑step guide walks you through the most effective solutions to get your WordPress site back online quickly.

TL;DR

A 502 Bad Gateway error usually comes from server overload, PHP issues, bad plugins, or hosting-related problems. Start by refreshing the page, clearing cache, disabling plugins, increasing PHP limits, checking CDN/firewall settings, and contacting your host if the issue persists.

CRM for small business

Step-by-Step: How to Fix the 502 Bad Gateway Error on WordPress

1. Refresh the Page & Try a Different Browser

Sometimes it’s just a temporary server glitch.

  • Press Ctrl + F5 (Windows) or Cmd + Shift + R (Mac).
  • Test your site in incognito mode or another browser.

2. Clear Your Browser & Server Cache

Caching plugins or CDNs may serve outdated responses.

  • Clear your browser cache.
  • Flush your WordPress cache from your caching plugin (if accessible).
  • If using Cloudflare, purge the cache from the Cloudflare dashboard.

3. Disable Problematic Plugins (Common Cause!)

A faulty or recently updated plugin can break PHP and trigger a 502 error.

How to disable plugins without dashboard access:

  1. Log in to FTP / cPanel File Manager
  2. Go to /wp-content/plugins/
  3. Rename the folder (e.g., plugins-broken)
  4. Try reloading your site

If it works, restore the folder name and disable plugins one by one to identify the culprit.

4. Switch to a Default Theme

A corrupted or poorly coded theme may also trigger 502 errors.

To test:

  1. Access your site via FTP
  2. Go to /wp-content/themes/
  3. Rename your active theme folder
  4. WordPress will automatically fall back to a default theme like Twenty Twenty‑Four

If the error disappears — your theme is the issue.

5. Increase PHP Memory Limit

Low PHP memory often causes gateway errors.

Add this to your wp-config.php above the “That’s all, stop editing!” line:

define( ‘WP_MEMORY_LIMIT’, ‘512M’ );

Or increase memory limit via your hosting control panel under PHP Settings.

6. Check Your CDN or Firewall (Cloudflare, Sucuri, etc.)

Security layers sometimes block legitimate requests.

Try:

  • Disabling the CDN temporarily
  • Changing Cloudflare mode to “DNS Only”
  • Temporarily pausing your firewall

If your site loads afterward, adjust your firewall/CDN settings.

7. Restart PHP or Your Hosting Server

If you have access to your hosting panel (e.g., cPanel, Plesk), restart:

  • PHP
  • Nginx/Apache services
  • Or reboot your entire server (for VPS/dedicated hosting)

This often resolves overload‑related issues.

8. Check for Hosting‑Level Issues

Shared hosting servers sometimes get overloaded or experience downtime.

Check your host’s status page and contact support if:

  • Your server is under high load
  • There’s an ongoing outage
  • Your site recently migrated or auto-updated

Hosts can identify slow scripts, server misconfigurations, or resource limits.

9. Review Error Logs

Server logs reveal the exact cause behind the 502 response.

You can find logs in:

  • /public_html/error_log
  • Hosting control panel under “Errors”
  • WordPress debug log (enable by adding the lines below)

 

define( ‘WP_DEBUG’, true );
define( ‘WP_DEBUG_LOG’, true );

 

Check /wp-content/debug.log for details.

10. Reinstall WordPress Core Files (Safe Option)

If corruption exists in your core WordPress files:

  1. Download a fresh copy from WordPress.org
  2. Replace everything except:
    • /wp-content/
    • wp-config.php

Your content and settings stay intact.

Final Thoughts

A 502 Bad Gateway error is annoying but usually temporary and fixable. By following the steps above—starting from simple caching fixes to deeper server-level checks—you can quickly restore your WordPress site’s functionality.

🚀 Need More Help?

If you’d like, I can help you troubleshoot your specific WordPress setup or create a tailored optimization checklist. Just tell me what error details or hosting environment you’re working with!