HTTP 500 – co oznacza ten błąd
500 to najbardziej ogólny błąd, jaki może zwrócić serwer – „coś się wywaliło, ale nie wiem dokładnie co”. W praktyce prawie zawsze oznacza, że PHP napotkało coś, czego nie potrafiło obsłużyć, i przerwało wykonywanie skryptu, zanim zdążył wygenerować stronę. Serwer nie ukrywa szczegółów specjalnie – ten kod istnieje właśnie po to, żeby przykryć całą kategorię błędów aplikacji, których przyczyna może być zupełnie różna.
Co to oznacza w praktyce na stronie WordPress
Najczęstszy winowajca to błąd krytyczny w PHP – literówka po ręcznej edycji pliku, funkcja wywołana z nieistniejącego pliku, albo wtyczka korzystająca z funkcji usuniętej w nowszej wersji PHP. Drugi klasyk to konflikt wtyczek albo motywu, zwykle widoczny tuż po aktualizacji – jedna wtyczka nadpisuje coś, czego oczekuje druga. Trzecia sytuacja to przekroczony limit pamięci PHP (memory_limit) – strona z dużą liczbą wtyczek i ciężkim motywem po prostu nie mieści się w przydzielonym limicie. Zdarza się też uszkodzony plik .htaccess, zwłaszcza po nieudanej zmianie permalinków, oraz sytuacja, gdy aktualizacja WordPressa lub wtyczki urwała się w połowie i brakuje jakiegoś pliku.
Co sprawdzić
- Log błędów PHP (error_log albo wp-content/debug.log, jeśli włączony WP_DEBUG_LOG) – tam zwykle jest dokładna linijka i plik winowajcy
- Ostatnie zmiany – aktualizacja wtyczki, motywu albo WordPressa tuż przed pojawieniem się błędu
- Deaktywacja wtyczek po kolei przez FTP albo menedżer plików (zmiana nazwy folderu), żeby znaleźć konflikt
- Limit pamięci PHP w php.ini albo wp-config.php