Błąd 500 to serwerowe „coś poszło nie tak” - komunikat, który celowo nie mówi nic, ale przyczyn jest krótka, powtarzalna lista. Internal Server Error, biała strona z samym numerem, czasem komunikat hostingu - to wszystko ta sama rodzina: serwer próbował zbudować stronę i mu nie wyszło. Podobnie jak przy błędzie krytycznym WordPressa, Twoje dane są całe. Różnica jest taka, że tym razem wysypało się coś bliżej serwera niż samego WordPressa - dlatego diagnozę zaczyna się z innej strony.
Pięć przyczyn, które odpowiadają za większość przypadków
- Uszkodzony plik
.htaccess- malutki plik z regułami serwera; psuje się zaskakująco często, np. po zmianie ustawień bezpośrednich odnośników albo przez wtyczkę bezpieczeństwa - Wyczerpany limit pamięci PHP - strona z galerią, sklepem i kreatorem stron potrzebuje więcej, niż hosting daje w standardzie
- Wtyczka albo motyw - ten sam mechanizm co przy błędzie krytycznym, tylko objawiony na poziomie serwera
- Niekompatybilna wersja PHP - po zmianie na serwerze albo po aktualizacji wtyczek
- Problem po stronie hostingu - przeciążony serwer współdzielony, awaria; rzadsze, ale się zdarza
Krok 1 - wyklucz .htaccess (2 minuty)
Przez FTP albo menedżer plików w panelu hostingu znajdź w głównym katalogu strony plik .htaccess (bywa ukryty - włącz pokazywanie ukrytych plików). Zmień mu nazwę na .htaccess-stary i odśwież stronę.
Działa? To był on. Zaloguj się do panelu WordPressa, wejdź w Ustawienia → Bezpośrednie odnośniki i kliknij „Zapisz zmiany” - WordPress wygeneruje świeży, poprawny plik. Koniec naprawy.
Nie działa? Przywróć nazwę i idź dalej.
Krok 2 - wtyczki i motyw
Procedura jest identyczna jak przy błędzie krytycznym: w wp-content zmieniasz nazwę folderu plugins na plugins-off i sprawdzasz stronę; jeśli wstała - włączasz wtyczki pojedynczo, aż znajdziesz winną. Potem ewentualnie ten sam test na motywie. Rozpisałem to krok po kroku w tekście o błędzie krytycznym - kroki 2 i 3 są wspólne dla obu awarii.
Krok 3 - pamięć i wersja PHP
W panelu hostingu poszukaj sekcji PHP:
- Wersja PHP: jeśli starsza niż 8.1 - podnieś (najlepiej na kopii testowej, jeśli hosting ją oferuje). Jeśli błąd wystąpił zaraz po podniesieniu wersji - wróć na poprzednią; któraś wtyczka nie nadąża i trzeba ją zaktualizować albo wymienić
- Limit pamięci (memory_limit): dla strony ze sklepem 256 MB to rozsądne minimum. Wiele hostingów pozwala to zmienić suwakiem w panelu, bez dotykania plików
Co pomaga: logi błędów. W panelu hostingu jest sekcja „Logi” albo „Logi błędów PHP” - ostatnie wpisy z godziną awarii zwykle wskazują winowajcę po nazwie pliku, np.
wp-content/plugins/nazwa-wtyczki/.... To ta sama informacja, do której dochodzi się wyłączaniem wtyczek po kolei, tylko od razu.
Krok 4 - hosting
Jeśli nic z powyższego nie pomogło, napisz do pomocy hostingu z godziną wystąpienia błędu i prośbą o zajrzenie w logi serwera. Czasem odpowiedź brzmi „przeciążenie serwera współdzielonego” - i to jest moment na szczerą rozmowę, czy ten hosting udźwignie Twoją stronę. Zbyt mały serwer to zresztą nie tylko awarie, ale i codzienna powolność - a wolny sklep gubi klientów także wtedy, gdy formalnie „działa”.
Błąd 500 tylko czasami? To też jest problem
Osobny wariant: strona zwykle działa, ale co jakiś czas rzuca 500 - przy większym ruchu, przy składaniu zamówienia, w nocy podczas backupu. To najgorszy typ awarii, bo trudno go złapać za rękę, a klienci trafiają na niego losowo. Zwykle winne są limity serwera albo ciężka wtyczka, która dławi się przy obciążeniu. Tu bez logów i monitoringu się nie obejdzie - to typowa robota, którą wyłapuję u klientów w ramach stałej opieki, zanim urośnie do awarii na cały dzień.
Najczęstsze pytania
Czym różni się błąd 500 od błędu krytycznego WordPressa?
Błąd krytyczny to komunikat samego WordPressa - silnik działa i zdążył go wyświetlić. Błąd 500 przychodzi z serwera - wysypało się wcześniej albo głębiej. Lista podejrzanych jest podobna, ale przy 500 zaczynasz od .htaccess i logów serwera, nie od maila ratunkowego.
Czy błąd 500 szkodzi pozycjom w Google? Krótka awaria - nie. Strona leżąca dniami albo rzucająca 500 regularnie - tak, Google stopniowo wycofuje takie adresy z wyników.
Naprawa u specjalisty - ile to trwa? Typowo godziny. Diagnoza z logami jest szybka, bo lista przyczyn jest krótka. Wycenę podaję po obejrzeniu strony, na piśmie.
Powiązane: Błąd krytyczny WordPressa - naprawa krok po kroku · Strona zhakowana - plan ratunkowy · Rozwój i optymalizacja