PrestaShop · Poradnik

Błąd 500 w PrestaShop (Internal Server Error) – co to jest i jak go szybko naprawić?

Błąd 500 w PrestaShop (Internal Server Error) – co to jest i jak go szybko naprawić?
📅 17 lip 20266 min✍️ Roman Matviy

Zobaczyłeś biały ekran i komunikat 'Błąd 500 (Internal Server Error)' na swoim sklepie PrestaShop? Spokojnie. To najczęstszy, ale zarazem najbardziej stresujący problem, z jakim spotykają się właściciele e-commerce. Oznacza on jedynie, że serwer napotkał nieoczekiwany błąd i nie może przetworzyć żądania. W tym artykule pokażę Ci krok po kroku, jak zdiagnozować przyczynę awarii i przywrócić sklep do działania. A jeśli licznik strat bije i potrzebujesz pomocy na wczoraj – skontaktuj się ze mną, naprawiam takie błędy ekspresowo.

Krok 1: Włącz tryb debugowania (Debug Mode)

Błąd 500 to tylko ogólny komunikat. Aby dowiedzieć się, co dokładnie się zepsuło, musisz zmusić PrestaShop do wyświetlenia szczegółów błędu (tzw. stack trace).

Zaloguj się na swój serwer FTP (np. przez FileZilla) i przejdź do folderu głównego sklepu. Znajdź plik `/config/defines.inc.php`. Otwórz go do edycji i znajdź linijkę:

`define('_PS_MODE_DEV_', false);`

Zmień słowo `false` na `true`, zapisz plik i wyślij z powrotem na serwer. Odśwież stronę sklepu. Zamiast białego ekranu zobaczysz teraz dokładny komunikat błędu (często na czerwonym tle), który wskaże uszkodzony plik, moduł lub problem z bazą danych.

Najczęstsze przyczyny błędu 500

Z mojego doświadczenia wynika, że w 90% przypadków za awarię odpowiada jeden z poniższych czynników:

  • Konflikt po aktualizacji modułu. Wystarczy, że deweloper wtyczki popełnił literówkę w kodzie PHP, a cały sklep 'kładzie się' z błędem 500.
  • Zła wersja PHP na serwerze. PrestaShop 1.7 i 8.x wymagają konkretnych wersji PHP (np. 7.4 lub 8.1). Zmiana wersji PHP w panelu hostingu potrafi często uratować sytuację.
  • Wyczerpanie limitów serwera. Twój hosting może zabijać procesy, którym brakuje pamięci (memory_limit) lub czasu na wykonanie (max_execution_time).
  • Błędny plik .htaccess. Przypadkowe spacje lub błędne reguły w tym pliku od razu skutkują błędem serwera.

Jak samodzielnie usunąć awarię?

Jeśli debug mode wskazał, że problemem jest konkretny moduł (nazwę modułu znajdziesz na samej górze komunikatu błędu, np. `modules/ps_emailalerts/ps_emailalerts.php`), wystarczy zalogować się na FTP i zmienić nazwę folderu tego modułu na np. `ps_emailalerts_OLD`. PrestaShop przestanie go ładować, a sklep powinien natychmiast wrócić do życia.

Jeśli błąd dotyczy pamięci cache, przejdź przez FTP do folderu `/var/cache/` (w nowszych wersjach) i usuń foldery `prod` oraz `dev`. PrestaShop wygeneruje świeży cache przy najbliższym wejściu na stronę.

Kiedy wezwać specjalistę?

Nie wszystkie błędy da się naprawić zmianą nazwy folderu. Jeśli błąd dotyczy bazy danych (np. uszkodzona tabela), nadpisanych plików jądra (Core) albo złośliwego oprogramowania (wirusa), nieumiejętne próby naprawy mogą doprowadzić do nieodwracalnej utraty danych o zamówieniach.

Gdy sklep generuje przychody, każda godzina przestoju to realne straty finansowe i wizerunkowe (klienci uciekają do konkurencji). Zamiast zgadywać na forach, warto powierzyć to zadanie doświadczonemu programiście.

Podsumowanie

Błąd 500 to nie koniec świata, ale sygnał, że z infrastrukturą techniczną Twojego sklepu dzieje się coś złego. Pamiętaj, aby po znalezieniu przyczyny i naprawie sklepu wyłączyć tryb debugowania (zmienić `true` z powrotem na `false`), ponieważ pozostawienie go włączonego stwarza gigantyczne zagrożenie dla bezpieczeństwa sklepu. Twój PrestaShop leży, a Ty nie wiesz jak sobie z tym poradzić? Napisz do mnie – analizuję logi serwera i przywracam sklepy do pełnej sprawności, minimalizując czas przestoju.

Masz projekt?

Porozmawiajmy o Twoim sklepie lub aplikacji

Bezpłatna wycena w 24h. Bez zobowiązań i ukrytych kosztów.

Napisz do mnie →

Opowiedz mi
o swoim projekcie.

Szukasz programisty do jednorazowego projektu lub długoterminowej współpracy? Odpiszę w ciągu 24 godzin z wyceną lub pytaniami doprecyzowującymi. Bez zobowiązań.