PrestaShop White Screen of Death: Step-by-Step Fix Guide

A PrestaShop white screen of death is a blank page with no message – front office, Back Office, or both. It usually means PHP stopped before the shop could render HTML. This guide shows how to turn on debug mode (even when the admin is down), read the real error, and work through the fixes that clear most WSoD cases.

From PrestaShop 1.7 onward (including 8 and 9), debug toggles live under Advanced Parameters → Performance when the Back Office still loads. If admin is blank too, you flip _PS_MODE_DEV_ in config/defines.inc.php over SFTP or SSH. Official screen notes are in the PrestaShop 9 Performance documentation. Take a full PrestaShop backup before you delete modules or restore files.

What a PrestaShop white screen of death usually means

The blank page is a symptom, not a single bug. A PrestaShop white screen of death means PHP hit a fatal error, ran out of memory, or failed before Smarty could print anything. Production mode hides that detail on purpose – so shoppers never see a stack trace. Your job is to make the error visible, then fix the cause.

Note where it fails:

  • Front only – often a theme override, module hook, or cache artifact on the storefront
  • Back Office only – often an admin module, tab, or override under override/
  • Both – wrong DB credentials, broken defines.inc.php, PHP version crash, or a fatal that runs on every request

Step 1: Enable debug mode

Debug mode prints the exception (or points you at the log) instead of a white page. Prefer the Back Office when it still opens.

PrestaShop Performance page with Debug Mode enabled for white screen of death troubleshooting
  1. Log into the Back Office.
  2. Go to Advanced Parameters → Performance.
  3. In the Debug mode block, set Debug mode to Yes.
  4. Click Save.
  5. Reload the blank URL in a private window.

If the Back Office is also a PrestaShop white screen of death, edit the file on disk. Download a copy of config/defines.inc.php first (even if you already took a full shop backup) so you can put the original back in one click if the edit goes wrong:

  1. Open config/defines.inc.php via SFTP, SSH, or the host file manager and save a local copy.
  2. Find define('_PS_MODE_DEV_', false); (wording may vary slightly by version).
  3. Change it to define('_PS_MODE_DEV_', true); and save.
  4. Reload the failing page.

Turn debug off again when you are done. Leaving it on in production exposes paths and stack traces to anyone who hits an error.

Step 2: Identify the error

With debug on, the PrestaShop white screen of death usually becomes a readable exception. Note the class name, module name, file path under modules/, themes/, or override/, and the line number. That string is usually enough to pick the right fix below.

Example PHP error shown after enabling PrestaShop debug mode on a white screen

If the page stays blank even with _PS_MODE_DEV_ true, check the host PHP error log (cPanel, Plesk, or var/logs/ on some setups). A parse error in a config file can die before PrestaShop’s debug layer runs.

Common sources:

  • Recent customizations – theme edits, overrides, or copied snippets
  • Modules – especially a module installed or updated just before the crash
  • Hosting changes – PHP version bump, missing extension, lower memory limit
  • Database credentials – wrong values in app/config/parameters.php after a migrate
  • File permissions – PHP cannot read a required file or write cache
  • Memory limit – fatals that mention memory exhausted
  • Stale cache – broken compiled templates after an update

Step 3: Fix the error

PrestaShop Performance options used to isolate modules and overrides after a white screen of death

Match the debug output to one path. Change one thing at a time, then reload.

Customizations and overrides

Undo the last theme or override change if you know it. On Performance, try Disable all overridesYes, save, and retest. If the shop returns, the bug is in override/ or a module override – fix or remove that file rather than leaving overrides disabled forever.

Module bugs

On Performance, set Disable non PrestaShop modulesYes and retest. If that clears the PrestaShop white screen of death, rename the suspect module folder under modules/ (or uninstall from BO once admin works) one at a time until you find the culprit. Prefer renaming over deleting so you can restore files after you identify it.

Hosting and PHP

Compare Advanced Parameters → Information with what the host says they run. After a PHP upgrade, missing extensions or stricter error handling often surface as a blank page. Ask the host which PHP version and memory_limit the vhost actually uses.

Database connection

If debug mentions database access or the shop died right after a server move, verify host, name, user, and password in app/config/parameters.php. Full steps are in our guide to changing PrestaShop database connection settings.

Permissions and memory

When the error names a file PHP cannot open, fix ownership/permissions for that path (typical web-user ownership; avoid 777 as a permanent fix). For memory exhausted errors, raise memory_limit in the vhost php.ini or ask the host – then clear cache and retest.

Cache

From Performance, click Clear cache. If BO is down, delete the contents of var/cache/prod/ (and var/cache/dev/ if present) via file manager or SSH, keeping the folders themselves. Huge cache trees are often easier to empty from SSH than from FTP.

Step 4: When you still need help

If debug is on, modules/overrides are isolated, credentials match, and you still have a PrestaShop white screen of death, gather: exact error text, PrestaShop version, PHP version, and what changed last (module, deploy, host upgrade). Post that on the PrestaShop forums, or send it to your host or a developer who can read server logs you cannot see from the shop alone.

Step 5: Restore from backup

Restoring files or a DB dump is a last resort – you lose changes made after that backup. Use it when a bad deploy cannot be rolled back quickly and you already have a recent copy. How to take and keep those copies is covered in the PrestaShop backup guide.

Quick checklist

  1. Enable debug (BO Performance, or _PS_MODE_DEV_ in defines.inc.php).
  2. Read the on-screen error or the PHP log.
  3. Isolate overrides and non-native modules from Performance.
  4. Fix DB credentials, permissions, memory, or cache as the message indicates.
  5. Turn debug off; restore from backup only if nothing else recovers the shop.

Most PrestaShop white screen of death cases clear once the real PHP message is visible. Start with debug mode, change one variable at a time, and keep a backup path ready before you delete anything you cannot put back.

Leave a Reply

Your email address will not be published. Required fields are marked *