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.

- Log into the Back Office.
- Go to Advanced Parameters → Performance.
- In the Debug mode block, set Debug mode to Yes.
- Click Save.
- 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:
- Open
config/defines.inc.phpvia SFTP, SSH, or the host file manager and save a local copy. - Find
define('_PS_MODE_DEV_', false);(wording may vary slightly by version). - Change it to
define('_PS_MODE_DEV_', true);and save. - 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.

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.phpafter 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

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 overrides → Yes, 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 modules → Yes 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
- Enable debug (BO Performance, or
_PS_MODE_DEV_indefines.inc.php). - Read the on-screen error or the PHP log.
- Isolate overrides and non-native modules from Performance.
- Fix DB credentials, permissions, memory, or cache as the message indicates.
- 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.
