Press "Enter" to skip to content

Sklep PrestaShop 1.6 – 1.7 nie działa – biała strona, błąd 500. Jak to naprawić?

Admin 0

Objawy błędu

Jeśli posiadasz sklep w starej wersji PrestaShop 1.6 (lub niekiedy 1.7) i natrafisz na błąd białej strony ten artykuł może nakierunkować Cię na naprawę tego problemu.

Brak wyświetlania treści (biała strona) objawia się na dowolnej stronie sklepu oraz podczas próby logowania sie do admina (zaplecza). Chyba nie trzeba opisywać jakie są konsekwencje pozostawienia sklepu w takim stanie….

Powoduje to:

1/ straty w sprzedaży
2/ spadek zaufania w oczach klientów
3/ czasem permanentny odpływ klientów do konkurencji
4/ spadki w pozycjonowaniu (czasem bardzo drastyczne i „nie do odrobienia” w przyszłości..)
5/ potencjalną blokadę IP sklepu w filtrach antyspamowych
6/ niebezpieczeństwo pozostawienia szkodliwych skryptów na serwerze (o czym dalej w artykule)
7/ blokadę konta hostingowego
8/ wyciek danych klientów (o czym także dalej)

i inne nieprzewidziane tutaj skutki.

Wyświetlenie błędu skryptu

Przede wszystkim włącz pokazywanie błędów na stronie. ERROR 500 przeważnie wyświetla białą stronę. To błąd wewnętrzny serwera (skryptu) który zatrzymuje pokazanie wszelkiego kodu na stronie. Domyślne mechanizmy w Prestashop tłumią epatowanie błędami odwiedzających i należy je tymczasowo włączyć aby poznać błąd.

Wejdz w folder

/config

Znajdź plik:

defines.inc.php

Następnie znajdź linijkę:

if (_PS_MODE_DEV_ === true) {
    @ini_set('display_errors', 'on');
    @error_reporting(E_ALL | E_STRICT);
    define('_PS_DEBUG_SQL_', true);
} else {
    @ini_set('display_errors', 'off');
    define('_PS_DEBUG_SQL_', false);
}

Zamień wystąpienie „off” na „on„:

if (_PS_MODE_DEV_ === true) {
    @ini_set('display_errors', 'on');
    @error_reporting(E_ALL | E_STRICT);
    define('_PS_DEBUG_SQL_', true);
} else {
    @ini_set('display_errors', 'on');
    define('_PS_DEBUG_SQL_', false);
}

Uwaga! po wykonanej naprawie należy przywrócić kod sprzed zmiany tzn. wprowadzić ponownie wartość „off” w tym miejscu aby sklep nie epatował dowolnymi błędami na każdym kroku. Są one przeażnie niegroźnie dla działania aplikacji i mogą być po prostu ostrzeżeniami dla developera PHP

Błąd wskazujący na wirus

Jeśli po włączeniu tej opcji zamiast białej strony pojawia się błąd typu:

Warning: require_once(/home/prestashop/domains/domena-sklepu.pl/public_html/classes/PrestaShopAutoload.php): failed to open stream: No such file or directory in /home/prestashop/domains/domena-sklepu.pl/public_html/config/autoload.php on line 29

Fatal error: require_once(): Failed opening required '/home/prestashop/domains/domena-sklepu.pl/public_html/classes/PrestaShopAutoload.php' (include_path='.:/opt/alt/php71/usr/share/pear') in /home/prestashop/domains/domena-sklepu.pl/public_html/config/autoload.php on line 29

Może to oznaczać to wsześniej opisany przez nas atak hakerski na podatność w PrestaShop 1.6 (patrz niżej). Pliki, które zawierają złośliwy kod zostały albo usunięte przez Twojego providera hostingowego albo zostały zmienione ich nazwy na np. Store.php.VIRUS:

Dlaczego biała strona?

Jak widać na powyższym screenie – pliki Store.php i Tools.php są na serwerze, ale ich nazwy zostały zmienione przez program antywirusowy. To powoduje, że de facto ich nie ma (tj PrestaShop ich „nie widzi”) i silnik PrestaShop zgłasza błąd 500.

Jak usunąć wirusa?

Informacje jak usunąć taką infekcję znajdziesz w tym artykule:

[PrestaShop 1.6] Fałszywy formularz PayPal w miejscu metody płatności. Czy to atak hakerski?

Oraz tym:

PrestaShop 1.7 i dziwne przekierowanie na stronę płatności PayPal

Moduł usuwający wirus – autoreklama:)

Należy wykonać naprawę wg podanych wyżej instrukcji albo skorzystać z naszej oferty. Przygotowalismy moduł który kasuje zagrożenia i naprawia pliki co 5 minut:

Zapraszamy do skorzystania z naszej oferty! W cenie gwarantujemy wykonanie zabezpieczeń i pełną instalację.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Zobacz także !
Jak się dokładnie objawia ten błąd? Błąd występuje podczas próby…