LochStudios  /  Help Centre  /  WordPress  /  Fix the WordPress White Screen of Death / HTTP 500

Fix the WordPress White Screen of Death / HTTP 500

Find the plugin, theme, PHP, or .htaccess problem behind a blank WordPress page or HTTP 500 on this hosting account.

Updated

A blank white page, or a 500 with no useful message, is the WordPress White Screen of Death. The site is still on the account. PHP or WordPress stopped before it could print anything.

This article is for Beginner and Standard shared hosting (cPanel) in Australia. Open cPanel from the portal. Do not guess a hostname.

On a VPS you edit the files and PHP yourself. Credentials and the console are on that server in the portal. See Install PHP and Common Extensions if the version or modules are the issue. Open a support ticket if you want us to walk through it.

On a dedicated server, open a support ticket and we will walk you through access.

A step is unclear, or you would rather we isolate the plugin? Open a support ticket and we will help. We keep hourly backups of the account if you need a file or the database put back. See Download and Restore a Backup.

If the name does not resolve at all, start with My website is down - what to check first. A 500 that is not WordPress-specific is covered in Fix a 500 Internal Server Error.

Open cPanel

  1. Sign in at the portal.
  2. Open the hosting service for the site.
  3. Click Log in to cPanel.

You do not need a server hostname to get in.

Use the File Manager for the file steps below. Turn on Show Hidden Files (dotfiles) under Settings. For a large wp-content folder, use FTP.

The document root is public_html for the main domain, or the addon / subdomain folder for that name.

If WordPress Toolkit lists the site

Prefer WordPress Toolkit (or Installatron) when it already manages this install. Do not start by downloading a zip from wordpress.org.

  1. In cPanel, open WordPress Toolkit.
  2. Find the site.
  3. Turn Debug on if the card offers it. That writes the same wp-content/debug.log as the wp-config.php steps below.
  4. Open Plugins and deactivate them all.
  5. Visit the site. If it loads, a plugin is the cause. Turn them back on one at a time until the white screen returns, then delete or update that plugin.
  6. If the site is still blank, open Themes and switch to a default WordPress theme (Twenty Twenty-Four, Twenty Twenty-Five, or whichever default is listed).
  7. If the site loads on the default theme, the previous theme is the problem. Update it, or stay on the default until you have a replacement.

If this started right after a WordPress, plugin, or theme update, disable that item first. If core files look half-written, open a support ticket and ask us to restore the folder from the hourly copy from before the update.

Installatron: open My Applications, choose the WordPress install, and use its plugin, theme, or backup controls if they are there. If the site is not listed in either tool, use the file steps below.

Turn on the debug log

Do this first if Toolkit did not already enable debug. You want the real PHP error, not a guess.

  1. In File Manager, open the site's document root.
  2. Edit wp-config.php (it sits next to wp-load.php, not inside wp-content).
  3. Find:
define( 'WP_DEBUG', false );
  1. Change that block to:
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );

If those lines are missing, add them above the line that says That's all, stop editing!.

  1. Save the file.
  2. Load the site once so WordPress can write the log.
  3. Open /wp-content/debug.log (or download it).
  4. Read the newest lines. A plugin path, a theme path, Allowed memory size, or a parse error is the lead.

Leave WP_DEBUG_DISPLAY as false so visitors do not see file paths. When the site is healthy again, set WP_DEBUG back to false and delete debug.log so it does not grow or leak paths.

Disable plugins and test the theme from files

A plugin or theme is the usual cause. You often cannot reach wp-admin while the screen is white, so rename folders instead.

  1. In File Manager, go to wp-content.
  2. Rename plugins to plugins-disabled.
  3. Load the site.
  4. If it works, rename the folder back to plugins.
  5. In WordPress, open Plugins and activate them one at a time. Load the site after each one. When the white screen returns, that plugin is the one. Delete it, replace it, or open a support ticket if you need a copy restored from an hourly backup.

Must-use plugins sit in wp-content/mu-plugins and stay loaded when you rename plugins. If the screen is still white after the rename, rename mu-plugins as well (for example to mu-plugins-disabled).

Drop-ins in wp-content can also take the site down. If you recently added a cache plugin, temporarily rename object-cache.php and advanced-cache.php (if they exist), then load the site again.

If plugins were not the cause:

  1. Still in wp-content/themes, rename the active theme's folder (add -disabled to the name).
  2. WordPress should fall back to a default theme if one is installed. If no default is present, install one from WordPress Toolkit, or open a support ticket.
  3. If the site works on the default theme, the renamed theme is the problem.

Raise the PHP memory limit

If debug.log mentions Allowed memory size or out of memory, PHP ran out of memory for that request.

  1. Edit wp-config.php again.
  2. Add this line above That's all, stop editing!:
define( 'WP_MEMORY_LIMIT', '256M' );
  1. Save and load the site.

Also raise the real PHP ceiling so WordPress is not ignored:

  1. In cPanel Software, open Select PHP Version.
  2. Open Options (or Switch to PHP Options).
  3. Set memory_limit to 256M (or 512M if the log still complains).
  4. Save.

Step-by-step for versions and options: Choose your PHP version.

If the site still exhausts memory after 256M, the page is doing too much for this plan, or a plugin is leaking. Open a support ticket and we will look at the log and the plan with you. Plan sizes are on /hosting/browse.

Check the PHP version and extensions

  1. In Select PHP Version, note the current version.
  2. For a site that is up to date, use the newest 8.x in the list. See Choose your PHP version.
  3. Under Extensions, confirm mysqli, pdo_mysql, gd, mbstring, curl, zip, and intl are ticked.
  4. If debug.log names a missing function, turn on the matching extension and save.

If you just switched PHP and the white screen started, put the previous version back so the site is up, then update plugins and themes before you try the new version again.

If the version you need is not in the list, open a support ticket.

Test .htaccess

A broken .htaccess often produces HTTP 500 rather than a WordPress message.

  1. In File Manager, turn on Show Hidden Files (dotfiles).
  2. In the document root, rename .htaccess to .htaccess-disabled.
  3. Load the site.
  4. If it works, the old file is the problem.
  5. When you can reach wp-admin, go to Settings → Permalinks and click Save Changes without editing anything. WordPress writes a fresh .htaccess.

If you cannot reach wp-admin, open a support ticket and we will put a correct file back. We can also restore .htaccess from an hourly copy.

Do not leave two PHP handler blocks (AddHandler, AddType, suPHP_ConfigPath) in .htaccess. Those can pin an old PHP version and ignore Select PHP Version.

Read Errors in cPanel

  1. In the Metrics section, open Errors.
  2. Read lines that match the time you hit the white screen.
  3. Also check for a file named error_log in the document root (File Manager).

Use the message, not the HTTP code alone:

What you seeWhat to do
A plugin or theme file pathDisable that plugin or theme (steps above)
Allowed memory sizeRaise the memory limit
Parse error or syntax errorRestore the named file. If you edited functions.php or wp-config.php, undo that edit. We can restore from an hourly copy if you open a support ticket
Cannot connect to the databaseSee Fix "Error Establishing a Database Connection" in WordPress
A PHP crash, or a line you do not recogniseOpen a support ticket and paste the line (not a screenshot of the whole account)

Disk space and resource limits

If the account is out of disk, or PHP is hitting the plan's CPU or memory share, WordPress can fail with a blank page.

  1. Check Disk Usage on the cPanel Statistics sidebar, then see Check Disk Usage.
  2. Remove leftover zips, old Toolkit or Installatron archives, and unused media. Hourly copies we keep do not count toward this quota. Copies you left on the account do.
  3. Open Resource Usage under Metrics. See Read your resource usage and metrics.
  4. If a graph is pinned at the ceiling, the site may need a quieter plugin set, a cache pass, or a larger plan. Open a support ticket and we will look at it with you. Cards are on /hosting/browse.

Quick order to try

  1. Enable the debug log (Toolkit or wp-config.php) and read wp-content/debug.log.
  2. Rename wp-content/plugins to plugins-disabled.
  3. Switch to a default theme (Toolkit, or rename the active theme folder).
  4. Set WP_MEMORY_LIMIT to 256M and match memory_limit in Select PHP Version.
  5. Rename .htaccess and, once wp-admin loads, save Permalinks.
  6. Check disk and Resource Usage.
  7. Open a support ticket if the screen is still white. Tell us the domain, when it started, what you already renamed, and the newest line from debug.log or Errors.

Most white screens end at the plugin, theme, memory, or .htaccess step. The log is the shortest path.

Related


Was this article helpful?

← Back to WordPress