Naprawa i reset uszkodzonego pliku .htaccess w WordPress
Błąd 500 Internal Server Error lub niedziałające podstrony (błąd 404) to jedne z najczęstszych problemów, z jakimi spotykają się administratorzy stron opartych na WordPress. W większości przypadków źródłem awarii jest uszkodzony plik konfiguracyjny .htaccess. W tym poradniku przeprowadzimy Cię przez proces diagnostyki i naprawy tego kluczowego elementu. Poniższe instrukcje pozwolą Ci przywrócić działanie witryny w kilka minut, niezależnie od tego, czy masz dostęp do panelu administratora, czy nie.
- Dlaczego dochodzi do awarii .htaccess?
- Jak przywrócić sprawność witryny i naprawić .htaccess?
- Ważna uwaga dla instalacji w podkatalogach
- Podsumowanie działań naprawczych pliku .htaccess
Dlaczego dochodzi do awarii .htaccess?
Zanim przystąpisz do działań naprawczych, warto przypomnieć, jaką rolę pełni ten plik. .htaccess (Hypertext Access) odpowiada za konfigurację serwera Apache/LiteSpeed, sterując m.in. przekierowaniami i strukturą linków. Jest on niezwykle wrażliwy na błędy składniowe – nawet pojedynczy, błędny znak może zablokować dostęp do całej witryny.
Do uszkodzenia dochodzi najczęściej w trzech scenariuszach:
- Konflikt wtyczek: Narzędzia do optymalizacji (np. WP Rocket) lub bezpieczeństwa (iThemes Security) automatycznie dopisują reguły do pliku. Błąd podczas tego zapisu niszczy jego strukturę.
- Błędy w edycji ręcznej: Wklejenie niesprawdzonego fragmentu kodu bez weryfikacji składni.
- Migracja serwera: Przeniesienie strony do nowego środowiska, które nie obsługuje starych reguł konfiguracyjnych.
Jak przywrócić sprawność witryny i naprawić .htaccess?
Proces naprawy zależy od tego, jak rozległa jest awaria. Wybierz ścieżkę, która odpowiada Twojej obecnej sytuacji:
- Ścieżka A (Automatyczna): Dedykowana dla sytuacji, gdy strona wyświetla błędy na podstronach, ale panel administracyjny nadal działa.
- Ścieżka B (Manualna): Niezbędna, gdy strona nie ładuje się w ogóle (Critical Error / Błąd 500) i wymagana jest interwencja przez FTP.
Metoda 1: Automatyczna regeneracja pliku
Tę metodę zastosuj, jeśli masz wciąż dostęp do kokpitu WordPress (/wp-admin/). Jest to najszybszy i najbezpieczniejszy sposób naprawy, niewymagający ingerencji w pliki serwera.
Instrukcja krok po kroku:
- Zaloguj się do panelu administratora WordPress.
- Przejdź do sekcji Ustawienia → Bezpośrednie odnośniki (Permalinks).
- Zjedź na sam dół strony, nie zmieniając żadnych ustawień.
- Kliknij przycisk Zapisz zmiany.
Operacja ta wymusza na systemie WordPress tzw. flush rewrite rules. CMS automatycznie usuwa błędną konfigurację routingu i generuje nowy, poprawny kod w pliku .htaccess. Po tej czynności linki na stronie powinny zacząć działać poprawnie.
Metoda 2: Ręczny reset do ustawień domyślnych (FTP)
Jeśli serwer zwraca błąd krytyczny (500) i nie pozwala na logowanie do zaplecza, konieczna jest interwencja z poziomu plików. Będziesz potrzebować klienta FTP (np. FileZilla) lub dostępu do Menedżera Plików w panelu hostingu.
Krok 1: Wyłączenie uszkodzonego pliku
- Połącz się z serwerem i wejdź do katalogu głównego domeny (zazwyczaj
/public_html). - Zlokalizuj plik
.htaccess.- Wskazówka: Jeśli plik jest niewidoczny, upewnij się, że w opcjach klienta FTP włączona jest funkcja "Pokaż ukryte pliki".
- Zmień jego nazwę na
.htaccess_oldlub.htaccess_backup.
Weryfikacja: Spróbuj odświeżyć stronę w przeglądarce. Jeśli witryna "wstała" (nawet jeśli wygląda niekompletnie), oznacza to, że usunąłeś źródło blokady.
Krok 2: Utworzenie nowego pliku konfiguracyjnego
Aby przywrócić pełną funkcjonalność (w tym działanie podstron), musisz wgrać fabryczną konfigurację WordPressa.
- Utwórz na komputerze nowy plik tekstowy o nazwie
.htaccess. - Wklej do niego poniższy, standardowy kod:
# BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress
- Zapisz plik i prześlij go na serwer do katalogu głównego.
Ważna uwaga dla instalacji w podkatalogach
Jeśli Twój WordPress nie znajduje się w głównym folderze domeny, ale w podkatalogu (np. twojadomena.pl/sklep/), powyższy kod wymaga modyfikacji. W linii RewriteBase / należy uwzględnić nazwę folderu, zmieniając ją na RewriteBase /sklep/. Bez tej korekty reset naprawi jedynie stronę główną, a podstrony nadal będą zwracać błędy.
Podsumowanie działań naprawczych pliku .htaccess
- Awaria całkowita (Błąd 500): Wyłącz stary plik przez FTP (zmiana nazwy) i wgraj nowy z domyślnym kodem.
- Awaria częściowa (Błędy 404): Odśwież ustawienia w sekcji Bezpośrednie odnośniki w panelu admina.
W kolejnym materiale omówimy zaawansowane metody zabezpieczania pliku .htaccess (m.in. zmianę uprawnień plików), co pozwoli uniknąć podobnych awarii w przyszłości.