Błąd 500 (Internal Server Error): co oznacza i jak go naprawić

Błąd 500, czyli „500 Internal Server Error”, oznacza, że serwer napotkał problem, którego nie potrafi bliżej opisać, i nie może wyświetlić strony. W odróżnieniu od błędu 404 nie chodzi o zły adres: strona powinna istnieć, ale coś po stronie serwera przestało działać. Dla odwiedzającego efekt jest ten sam – strona internetowa po prostu przestaje działać – dlatego ten błąd trzeba naprawić szybko.

Błąd 500

Co oznacza błąd 500 dla użytkownika

Jeśli widzisz błąd 500 na cudzej stronie, problem nie leży po Twojej stronie. Możesz odświeżyć stronę po chwili, wyczyścić pamięć podręczną przeglądarki albo spróbować później. Jeśli błąd się utrzymuje, warto zgłosić go właścicielowi strony.

Komunikat bywa różnie opisany: „HTTP 500”, „Internal Server Error”, „Wewnętrzny błąd serwera”, „Ta strona nie działa – HTTP ERROR 500” w Chrome albo pusta biała strona.

Najczęstsze przyczyny

  • Błąd w pliku .htaccess. Literówka albo dyrektywa, na którą serwer nie pozwala, powoduje błąd 500 dla całej strony. Przykład z praktyki: dopisanie do .htaccess linii Options -Indexes na serwerze, który nie zezwala na zmianę tej opcji, wyłącza całą witrynę.
  • Błąd w kodzie PHP – po aktualizacji wtyczki, motywu albo po ręcznej zmianie pliku.
  • Konflikt wtyczek lub niezgodność z wersją PHP – np. stara wtyczka po przejściu serwera na nowszą wersję PHP.
  • Wyczerpany limit pamięci lub czasu wykonania skryptu.
  • Problem z bazą danych – uszkodzona tabela, przekroczony limit połączeń.
  • Złe uprawnienia plików i katalogów.
  • Przeciążenie serwera lub awaria po stronie hostingu.

Jak zdiagnozować błąd 500

  1. Sprawdź, czy błąd dotyczy całej strony, czy tylko niektórych adresów. Jeśli tylko panelu administracyjnego albo jednej podstrony, przyczyna zwykle leży w konkretnej wtyczce lub szablonie.
  2. Przypomnij sobie ostatnią zmianę: aktualizację, nową wtyczkę, edycję pliku. W większości przypadków to ona jest przyczyną.
  3. Zajrzyj do logu błędów serwera. W panelu hostingu (cPanel, DirectAdmin) jest zwykle zakładka z logami; komunikat wskaże plik i linię, w której wystąpił błąd.
  4. W WordPressie włącz zapis błędów do pliku – w wp-config.php ustaw WP_DEBUG i WP_DEBUG_LOG na true, a WP_DEBUG_DISPLAY na false. Błędy trafią do pliku wp-content/debug.log, a nie na ekran użytkowników. Po diagnozie wyłącz debugowanie.

Jak naprawić błąd 500 w WordPressie

  1. Plik .htaccess. Zmień jego nazwę (np. na .htaccess_old) przez FTP lub menedżer plików. Jeśli strona wróci, w panelu wejdź w Ustawienia → Bezpośrednie odnośniki i zapisz ustawienia, żeby WordPress utworzył nowy plik. Potem dodawaj własne reguły po jednej.
  2. Wtyczki. Zmień nazwę katalogu wp-content/plugins (np. na plugins_off). Jeśli strona działa, przywróć nazwę i wyłączaj wtyczki po kolei, aż znajdziesz winną.
  3. Motyw. Tymczasowo przełącz się na domyślny motyw WordPressa, zmieniając nazwę katalogu aktywnego motywu.
  4. Pamięć PHP. Zwiększ limit w wp-config.php (define('WP_MEMORY_LIMIT', '256M');) lub w ustawieniach PHP na hostingu.
  5. Wersja PHP. Sprawdź w panelu hostingu, czy wersja PHP odpowiada wymaganiom WordPressa i wtyczek.
  6. Pliki rdzenia. Jeśli nic nie pomaga, wgraj ponownie katalogi wp-admin i wp-includes z aktualnej paczki WordPressa (bez nadpisywania wp-content i wp-config.php).
  7. Hosting. Gdy przyczyną jest przeciążenie lub awaria serwera, potrzebna jest pomoc administratora hostingu.

Przed każdą zmianą zrób kopię plików i bazy danych.

Błąd 500 a SEO

Krótkotrwały błąd nie zaszkodzi pozycjom. Google przy błędach serwera (kody 5xx) ogranicza tempo pobierania strony, a gdy problem trwa dłużej – kilka dni – zaczyna usuwać adresy z indeksu. Dlatego:

  • planowane prace serwisowe lepiej oznaczać kodem 503 (usługa tymczasowo niedostępna), najlepiej z nagłówkiem Retry-After,
  • po awarii warto sprawdzić w Search Console raport „Strony” i statystyki indeksowania (Ustawienia → Statystyki indeksowania → Stan hosta), czy Googlebot nie zgłaszał problemów z serwerem.

Jak zapobiegać

  • Aktualizuj wtyczki i motywy, ale najpierw na kopii testowej albo przynajmniej z aktualną kopią zapasową.
  • Ogranicz liczbę wtyczek do potrzebnych.
  • Edytuj .htaccess i wp-config.php ostrożnie i zawsze z kopią poprzedniej wersji.
  • Korzystaj z monitoringu dostępności (np. UptimeRobot), który powiadomi Cię o awarii.
  • Monitorowanie zasobów serwera i wybór hostingu z zapasem wydajności zmniejsza ryzyko błędów przy większym ruchu.
Share your love

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Wymagane pola są oznaczone *