PrestaShop error 500 or a blank page: what to do in the first 15 minutes
When PrestaShop shows error 500 or a blank page, first check whether it affects the whole store or just one page. Then turn on debug mode or open the error log to see the real message. The usual causes are a module after an update, a PHP version change and the server's memory limit. In an emergency, disable a module by renaming its folder.
Author: The TellMyShop team. A guide for PrestaShop store owners: the cause, the manual fix and the same work in a chat conversation.
Last updated: · 5 min read
Step zero: what exactly stopped working?
Before you change anything, note down three things. They decide whether you'll fix it yourself in a quarter of an hour or need help.
| Question | If yes | Likely cause |
|---|---|---|
| Is the whole store and admin down? | an error when PrestaShop starts | PHP, memory, a damaged file, a module loaded everywhere |
| Is the store down but the admin working? | an error in the theme or a front-office module | a recently changed module, the theme, an override |
| Is one page down, such as the cart or a product page? | an error in a module hooked to that page | a payment, shipping or product page module |
| Did anything change in the last 24 hours? | that's almost always the cause | a module, PHP or theme update, a migration |
The last row matters most. An error 500 that appeared an hour after a module update usually turns out to be that module's fault. Start by reversing the last change before you look anywhere else.
How to see the real error message
Error 500 on its own tells you nothing. Two places show the real message, with the file and module name.
- Debug mode. When the admin works, you turn it on in Advanced Parameters > Performance. When the admin is down, you change
_PS_MODE_DEV_totruein theconfig/defines.inc.phpfile. We describe both ways, and how to switch it off safely, in our post on PrestaShop debug mode. LH.pl also shows it step by step (in Polish). - The server error log. In your hosting panel, usually as “error log” or “PHP logs”. It shows errors even when you don't want to turn on debugging on a live store.
- The PrestaShop log. Advanced Parameters > Logs holds the errors PrestaShop managed to record, with dates. It's useful when the error affects only part of the store.
After the diagnosis, turn debug mode off. It shows technical details to every visitor.
The most common causes and what to do about them
A module after an update. The message points to a file in the modules/module_name folder. Disable the module in the admin, and if the admin is down, rename its folder over FTP. Then report the error to the module's author with the text of the message.
PHP version. Your host changed PHP, or you changed it yourself in the hosting panel. Older modules don't work on newer PHP, and PrestaShop 8 and 9 have their own requirements. Check the PrestaShop system requirements and go back to the previous PHP version if the error appeared right after the change.
Memory and disk. A message about “Allowed memory size”, or no space left on the disk. That's for your host: raising the PHP memory limit or freeing up space.
Overrides and cache. After a module is uninstalled, an override file sometimes stays behind and refers to code that no longer exists. Clearing the contents of var/cache and checking the override folder helps.
Damaged files or an infection. When nothing changed and unknown pieces of code have appeared in the files, it may be an attack. Pskrk describes a case like this (in Polish). In that case you need a backup and a specialist, not do-it-yourself fixes. Zenbox has put together a wider list of faults (in Polish).
When the chat helps, and when it doesn't
When the whole of PrestaShop doesn't respond, your chat (Claude or ChatGPT) can't help, because the TellMyShop module runs inside the store and goes down with it. Then you're left with the plan above, or a developer.
The chat is useful when the store works but part of it has an error, and for prevention. In the free TellMyShop Free version the chat reads the error log for a chosen period, the store's technical review and the module list, then explains the messages in plain language.
You: Since this morning customers have been writing that the cart won't open. Yesterday I updated two modules. Check what's going on.
Your chat: The log for the last 24 hours has 46 entries of the same error, the first one yesterday at 21:14, a few minutes after the shipping module was updated.
The error comes from a file in that module and occurs when the cart opens. The other updated module has no errors.
The safest step: disable the shipping module until the author releases a fix. Customers will lose that shipping method, but the cart will work again.
Disabling a module through the chat works in TellMyShop Pro with the Modules switch on in the module panel. The switch lasts 24 hours and requires a database backup made the same day. A disabled module keeps its data, so you can enable it again with one request. With payment and shipping modules the chat warns you what customers will lose. Example requests: error messages after a module update, fixing an error page after an update and disabling a module that breaks the cart.
How to lower the risk of the next error 500
- Back up the files and database before every module or PHP update.
- Update one module at a time and check the store after each one.
- Do updates in the morning on a working day, not on Friday evening.
- Review the error log once a week, before a small error grows.
- Keep a staging copy of the store for testing bigger changes.
If the store works but your changes aren't showing, that's a different problem: PrestaShop changes not showing.
Questions and answers
What does error 500 mean in PrestaShop?
That the server hit an error in the store's code and couldn't build the page. The message itself doesn't say what happened. Only debug mode or the server error log shows the cause. The usual culprit is a module after an update, a PHP version change, or running out of space or memory on the server.
How do I disable a module when the PrestaShop admin doesn't work?
Using FTP or your host's file manager, rename the module's folder inside the modules folder, for example by adding _off to the end. PrestaShop won't find the module and will skip it. Restore the name once it's fixed. This is an emergency exit, so note what you changed so you can reverse it later.
Can error 500 be my host's fault?
Yes. An exceeded PHP memory limit, a full disk, a disabled PHP extension or a PHP version change by the host all produce the same error 500. If the log shows a message about memory or a missing extension, it's a matter for your host, not the module's author.
Can the chat help when the whole store is down?
No, because the TellMyShop module runs inside the store. When PrestaShop doesn't respond at all, the connection to the chat doesn't work either. The chat helps when the error affects part of the store, such as one page or the cart, and with prevention: reviewing the error log after every update.
PrestaShop is a registered trademark of PrestaShop SA. Claude is a trademark of Anthropic PBC. ChatGPT and OpenAI are trademarks of OpenAI. TellMyShop is not affiliated with these companies.