Biała strona w PrestaShop (blank page, WSoD) to najczęstszy objaw awarii sklepu: przeglądarka pokazuje pusty ekran, a w źródle strony nie ma ani treści, ani błędu. Przyczyna prawie zawsze jest w logach — biała strona to celowo wyłączone wyświetlanie błędów PHP. Poniżej pełna procedura naprawy: od bezpiecznego backupu, przez tryb debug, po izolację winnego modułu. Doraźna naprawa u specjalisty kosztuje 200–600 zł netto, a diagnostyka z raportem 500–1 500 zł netto.
Najważniejsze: Białą stronę w PrestaShop naprawiasz w 6 krokach: 1) backup plików i bazy, 2) włącz tryb debug na kopii (
_PS_MODE_DEV_), 3) odczytaj błąd z ekranu lub logów PHP (error_log,var/logs/), 4) sprawdź najczęstsze przyczyny (pamięć PHP, uprawnienia plików, uszkodzone cache), 5) izoluj moduł — wyłączaj po kolei lub przez tabelęps_module, 6) po naprawie przetestuj pełną ścieżkę zakupową. Nigdy nie naprawiaj produkcji bez kopii zapasowej.
- ## Krok 1: Backup — zanim cokolwiek dotkniesz
Biała strona nie niszczy danych, ale pochopna „naprawa" już tak. Zanim zmienisz cokolwiek
- zrób kopię plików sklepu (cały katalog, nie tylko
var/), - zrób zrzut bazy danych (
mysqldumplub narzędzie hostingu), - zanotuj wersję PrestaShop i PHP — przydadzą się przy diagnozie.
Na hostingu bez dostępu do SSH backup robisz przez panel (pliki + baza) albo zgłaszasz do supportu hostingu. Backup to 10 minut, odtworzenie sklepu bez niego — godziny albo dni.
- ## Krok 2: Włącz tryb debug
Biała strona pojawia się, bo PHP ma wyłączone wyświetlanie błędów. Włącz debug na kopii sklepu
- w PrestaShop 1.7/8/9 edytuj
config/defines.inc.php: ustawdefine('_PS_MODE_DEV_', true);, - jeśli nie masz dostępu do plików, poproś hosting o włączenie
display_errorsw PHP dla kopii, - odśwież stronę, na której był biały ekran.
Zamiast pustego ekranu zobaczysz pełny komunikat błędu: plik, linia, klasa i komunikat. To 90% diagnozy. Instrukcję rozłożyłem szerzej w artykule tryb debug w PrestaShop.
Uwaga: Tryb debug włączaj tylko na kopii sklepu. Na produkcji komunikaty błędów widoczne dla klientów to wyciek informacji o serwerze i zaproszenie dla atakujących.
- ## Krok 3: Odczytaj logi
Jeśli nie możesz włączyć trybu debug, sięgnij po logi
var/logs/w katalogu PrestaShop (pliki dzienne, np.dev.log,prod.log),- logi PHP hostingu — najczęściej
error_logw katalogu sklepu lub~/logs/, - logi serwera nginx/apache — dostępne w panelu hostingu.
Szukaj wpisów z ostatnich minut: PHP Fatal error, Allowed memory size exhausted, Cannot redeclare, Class not found. Gdzie dokładnie szukać logów i jak je czytać — opisałem w logi PrestaShop.
- ## Krok 4: Sprawdź najczęstsze przyczyny
Typowe przyczyny białej strony w kolejności prawdopodobieństwa
| Przyczyna | Charakterystyczny wpis w logach | Naprawa |
|---|---|---|
| Brak pamięci PHP | Allowed memory size of X bytes exhausted |
Podnieś memory_limit do 256M+ |
| Błąd modułu | PHP Fatal error w pliku modułu |
Wyłącz moduł (panel lub baza) |
| Uprawnienia plików | failed to open stream: Permission denied |
Katalogi 755, pliki 644, var/ 775 |
| Uszkodzone cache | błąd w var/cache lub Smarty |
Wyczyść var/cache (zachowaj strukturę) |
| Niezgodność PHP | Parse error / syntax error |
Dopasuj wersję PHP do modułu |
Zły .htaccess |
brak wpisu, 500 zamiast treści | Regeneruj .htaccess |
Brak pamięci PHP
Po dodaniu modułu albo przy dużym imporcie sklep może przekroczyć memory_limit. Podnieś limit w .user.ini lub panelu hostingu (PrestaShop 8/9 komfortowo działa od 256M), wyczyść cache i sprawdź, czy problem wraca.
Uprawnienia plików
Po migracji hostingu pliki często tracą uprawnienia. Standard dla PrestaShop
-
- katalogi:
755, -
- pliki:
644, -
katalog
var/i podkatalogi:775(musi być zapisywalny przez PHP). -
Naprawa przez SSH:
find . -type d -exec chmod 755 {} \;ifind . -type f -exec chmod 644 {} \;, potem osobnovar/.
Uszkodzone cache
Wyczyść cache przez panel (Parametry zaawansowane → Wydajność → Wyczyść cache) albo usuwając zawartość var/cache z zachowaniem struktury katalogów. Usuń też pliki var/cache/dev i var/cache/prod.
- ## Krok 5: Izoluj winny moduł
Jeśli logi wskazują na moduł (albo nie ma logów), wyłączaj moduły po kolei
- panel → Moduły → Menedżer modułów, wyłączaj po jednym i odświeżaj stronę,
- gdy panel też jest biały, wyłączaj przez bazę:
UPDATE ps_module SET active = 0 WHERE name = 'nazwa_modulu';, - po przywróceniu sklepu włączaj moduły pojedynczo — ostatni włączony przed powrotem błędu jest sprawcą.
Zamiast zgadywania możesz wyłączyć hurtowo wszystkie moduły poza niezbędnymi i włączać partiami. Pełna procedura: konflikt modułów w PrestaShop.
- ## Krok 6: Napraw, przetestuj, wyłącz debug
Po znalezieniu przyczyny
- napraw problem (zaktualizuj moduł, popraw uprawnienia, podnieś limit),
- wyłącz tryb debug (
_PS_MODE_DEV_nafalse) i wyczyść cache, - przetestuj pełną ścieżkę zakupową: strona główna → kategoria → produkt → koszyk → checkout → potwierdzenie zamówienia i mail,
- sprawdź panel admina — biała strona potrafi dotyczyć tylko frontu albo tylko admina.
Kiedy biała strona dotyczy tylko panelu admina
Biały panel przy działającym sklepie to zwykle
- wyczerpany
memory_limit(panel PrestaShop zjada więcej pamięci niż front), - stary cache po aktualizacji — wyczyść
var/cache, - konflikt modułu administracyjnego — wyłącz ostatnio instalowany moduł przez bazę.
Po podniesieniu limitu pamięci do 512M na czas diagnozy panel wraca w większości przypadków.
Kiedy wezwać pomoc
Sama diagnoza (logi, debug, izolacja modułu) jest w zasięgu każdego, kto nie boi się konsoli. Pomoc specjalisty ma sens, gdy:
- logi nie pokazują przyczyny albo wskazują na rdzeń PrestaShop,
- biała strona wraca po każdej próbie naprawy,
- sklep stoi dłużej niż godzinę — każda godzina to utracone zamówienia,
- w grę wchodzi baza danych (uszkodzone tabele, błędy SQL).
Naprawa doraźna to 200–600 zł netto, diagnostyka z raportem 500–1 500 zł netto. Zgłoszenia przyjmuję przez formularz kontaktowy, a stałą pomoc techniczną prowadzę w ramach usługi pomoc techniczna PrestaShop.
Najczęściej zadawane pytania
Biała strona w PrestaShop — od czego zacząć?
Od backupu, potem włącz tryb debug na kopii sklepu (_PS_MODE_DEV_ w config/defines.inc.php) i odczytaj błąd. W 80% przypadków komunikat wskazuje wprost przyczynę: brak pamięci, błąd modułu, uprawnienia plików albo uszkodzone cache.
Czy biała strona oznacza utratę danych?
Nie — biały ekran to tylko wyłączone wyświetlanie błędów PHP, dane w bazie pozostają nietknięte. Ryzykiem jest dopiero pochopna „naprawa" bez kopii zapasowej. Dlatego pierwszy krok to zawsze backup plików i bazy.
Biała strona pojawiła się po aktualizacji — co robić?
Sprawdź var/logs/ i wyłącz ostatnio aktualizowany moduł. Jeśli błąd pojawił się po aktualizacji rdzenia, przejdź procedurę z artykułu problemy po aktualizacji PrestaShop — obejmuje rollback i testy.
Jak długo trwa naprawa białej strony?
W typowym przypadku (brak pamięci, uprawnienia, pojedynczy moduł) to 1–3 godziny pracy specjalisty. Skomplikowane przypadki — konflikt w rdzeniu, uszkodzona baza, zainfekowane pliki — mogą zająć 1–2 dni. Dlatego diagnostyka zaczyna się od najszybszych do sprawdzenia przyczyn.
Źródła i narzędzia
- PrestaShop DevDocs — troubleshooting
- PrestaShop — dokumentacja wsparcia
- PHP — konfiguracja memory_limit
- OWASP — bezpieczeństwo aplikacji webowych
👉 Biała strona i sklep nie działa? Opisz problem i przekaż dostęp przez bezpieczny kanał — formularz kontaktowy lub kontakt@informatix.com.pl. Zobacz też pełny przegląd awarii: pomoc PrestaShop.
📖 Zobacz też: błąd 500 w PrestaShop, tryb debug i logi PrestaShop.