Jak naprawić błąd „Nie masz uprawnień dostępu do tej strony“ w WordPressie

Błąd „Przepraszamy, nie masz uprawnień dostępu do tej strony" w WordPressie blokuje Twoje żądanie wyświetlenia lub zarządzania stroną albo obszarem administracyjnym. Przyczyną jest niemal zawsze jedna z trzech rzeczy: nieprawidłowa rola użytkownika, uszkodzony plik .htaccess lub nieprawidłowe uprawnienia plików. Ten artykuł obejmuje 9 sprawdzonych rozwiązań, uporządkowanych od najszybszego do najbardziej dokładnego.

Szybka diagnoza — najpierw sprawdź najbardziej prawdopodobną przyczynę:

  • Nieprawidłowa rola użytkownika — Twoje konto WordPress straciło dostęp administratora. Zobacz Fix 3.
  • Uszkodzony .htaccess — często wywołany aktualizacją wtyczki lub migracją serwera. Zobacz Fix 5.
  • Nieprawidłowe uprawnienia plików — Twój serwer WWW nie może odczytać plików WordPressa. Zobacz Fix 6.

Jeśli nie masz pewności, co Cię dotyczy, skorzystaj z diagramu decyzyjnego poniżej.

Diagram decyzyjny rozwiązywania problemów

Użyj tej tabeli, aby zidentyfikować najbardziej prawdopodobną przyczynę źródłową, zanim zagłębisz się w poszczególne rozwiązania:

Pytanie Tak Nie
Czy błąd pojawił się zaraz po aktualizacji lub instalacji wtyczki? → Fix 4: Wyłącz wszystkie wtyczki Kontynuuj ↓
Czy jesteś całkowicie zablokowany poza wp-admin, nawet pod /wp-login.php? → Fix 3: Sprawdź rolę użytkownika Kontynuuj ↓
Czy błąd pojawia się tylko pod jednym konkretnym adresem URL? → Fix 1: Ponownie sprawdź adres URL Kontynuuj ↓
Czy błąd pojawił się po migracji serwera lub zmianie hostingu? → Fix 5: Zresetuj .htaccess lub Fix 6: Uprawnienia plików Kontynuuj ↓
Czy instalacja WordPressa jest nowa lub niedawno przywrócona z kopii zapasowej? → Fix 9: Zainstaluj ponownie pliki rdzenia → Fix 2: Najpierw wyczyść pamięć podręczną przeglądarki

Fix 1: Ponownie sprawdź adres URL

Najszybsze sprawdzenie i pierwsze, które warto wykluczyć. Pojedyncza literówka w adresie URL może wywołać ten błąd, ponieważ WordPress nie znajduje żądanej strony i przechodzi do odmowy dostępu. Sprawdź pisownię i strukturę ścieżki oraz upewnij się, że strona lub wpis nie został przeniesiony, usunięty ani nie zmieniono jego uproszczonej nazwy.

Fix 2: Wyczyść pamięć podręczną przeglądarki

Twoja przeglądarka może serwować wersję strony z pamięci podręcznej, do której Twoje konto nie ma już dostępu, albo nieaktualne ciasteczko sesji, które nie pasuje już do Twojego bieżącego stanu logowania.

  1. Otwórz przeglądarkę i wejdź do menu ustawień.
  2. Przejdź do opcji historii przeglądania lub ustawień prywatności.
Historia Chrome
  1. Znajdź opcję wyczyszczenia danych przeglądania i kliknij ją.
wyczyść dane przeglądania
  1. Wybierz zakres czasu, dla którego chcesz wyczyścić pamięć podręczną.
  2. Wybierz rodzaj pamięci podręcznej do wyczyszczenia, np. ciasteczka lub historię przeglądania.
  3. Kliknij przycisk „Wyczyść dane" lub „Wyczyść pamięć podręczną", aby usunąć wybrane dane.
Wyczyść dane

Po wyczyszczeniu pamięci podręcznej i ciasteczek odśwież stronę i spróbuj zalogować się ponownie. Jeśli błąd nadal występuje, przejdź do następnego rozwiązania.

Fix 3: Sprawdź swoją rolę użytkownika WordPress

Jeśli rola Twojego konta została zmieniona — albo jeśli tabela ról użytkowników w bazie danych witryny uległa uszkodzeniu —, WordPress odmówi dostępu do stron administracyjnych nawet przy prawidłowym haśle.

  1. Zaloguj się do kokpitu WordPressa.
kokpit WordPressa
  1. Znajdź i kliknij „Użytkownicy" w menu administracyjnym kokpitu WordPressa.
zakładka Użytkownicy w WordPressie
  1. Odszukaj swoje konto na liście i sprawdź wartość w kolumnie „Rola".
rola użytkownika WordPress

Jeśli w kolumnie „Rola" widnieje coś innego niż Administrator, Twoje konto zostało zdegradowane. Administrator z dostępem może to poprawić, edytując Twój profil użytkownika. Jeśli w ogóle nie możesz dotrzeć do ekranu Użytkownicy — czyli Twoje konto nie ma dostępu administratora —, zobacz Fix 7 poniżej, który resetuje role użytkowników bezpośrednio w bazie danych.

Fix 4: Wyłącz wszystkie wtyczki (test w trybie awaryjnym)

Konflikty wtyczek to jedna z głównych przyczyn tego błędu. Z naszego doświadczenia ze zgłoszeniami pomocy technicznej WP STAGING wynika, że wadliwa wtyczka, która podpina się pod sprawdzanie uprawnień WordPressa, może odebrać dostęp wszystkim użytkownikom zaraz po instalacji lub aktualizacji. Wyłączenie wszystkich wtyczek to najszybszy sposób, aby potwierdzić, czy odpowiada za to wtyczka.

Jeśli nadal masz dostęp do administracji WordPressa:

  1. Przejdź do Wtyczki → Zainstalowane wtyczki.
  2. Zaznacz wszystkie wtyczki za pomocą pola wyboru na górze listy.
  3. Otwórz menu rozwijane Działania grupowe, wybierz Wyłącz, a następnie kliknij Zastosuj.
  4. Spróbuj otworzyć stronę, która zwracała błąd.

Jeśli jesteś całkowicie zablokowany poza administracją:

  1. Połącz się ze swoją witryną przez SFTP lub użyj Menedżera plików w cPanel.
  2. Przejdź do wp-content/plugins/.
  3. Zmień nazwę folderu plugins na plugins-disabled.
  4. WordPress automatycznie wyłączy wszystkie wtyczki przy następnym żądaniu.
  5. Zaloguj się. Jeśli dostęp zostanie przywrócony, zmień nazwę folderu z powrotem na plugins i ponownie włączaj wtyczki jedna po drugiej, aby zidentyfikować konflikt.

Po zidentyfikowaniu problematycznej wtyczki sprawdź jej forum pomocy lub dziennik zmian pod kątem znanych konfliktów, zanim ją ponownie włączysz.

Fix 5: Zresetuj uszkodzony plik .htaccess

Uszkodzony plik .htaccess może zablokować dostęp do całego obszaru administracyjnego WordPressa. To jeden z najczęstszych wyzwalaczy, jakie widzimy, często występujący, gdy wtyczka modyfikuje .htaccess i zapisuje nieprawidłowe reguły przepisywania.

  1. Uzyskaj dostęp do panelu sterowania swojego hostingu (cPanel), logując się przy użyciu swoich danych.
logowanie do cPanel
  1. Przejdź do „Menedżera plików" lub podobnego narzędzia do zarządzania plikami w cPanel.
Menedżer plików cPanel
  1. Odszukaj i wybierz katalog główny swojej witryny.
Public HTML
  1. Znajdź plik .htaccess w katalogu głównym witryny. Zmień jego nazwę na .htaccess.old, aby go wyłączyć bez usuwania.
zmiana nazwy pliku .htaccess

Spróbuj zalogować się do swojej witryny WordPress. Jeśli błąd zniknie, plik .htaccess był uszkodzony. Wygeneruj nowy, czysty:

  1. Przejdź do Ustawienia → Bezpośrednie odnośniki w obszarze administracyjnym WordPressa.
  2. Kliknij Zapisz zmiany — WordPress automatycznie zapisze nowy, prawidłowy plik .htaccess.
Zapisz zmiany

Jeśli błąd nadal występuje po zmianie nazwy .htaccess, przyczyna leży gdzie indziej — przejdź do Fix 6.

Fix 6: Napraw nieprawidłowe uprawnienia plików

WordPress wymaga określonych uprawnień plików, aby odczytywać i wykonywać swoje pliki. Pliki powinny być ustawione na 644, a katalogi na 755. Bardziej restrykcyjne uprawnienia uniemożliwiają serwerowi WWW odczyt plików WordPressa i powodują błędy dostępu. Oto jak poprawić uprawnienia w cPanel:

  1. Zaloguj się na swoje konto cPanel.
logowanie do cPanel
  1. Odszukaj i kliknij opcję „Menedżer plików" w panelu cPanel.
Menedżer plików
  1. Przejdź do katalogu, w którym przechowywane są pliki Twojej witryny — zwykle folderu public_html lub www.
Public HTML
  1. Kliknij plik lub katalog prawym przyciskiem myszy i wybierz „Zmień uprawnienia" lub „Uprawnienia".
Zmień uprawnienia
  1. Ustaw pliki na 644, a katalogi na 755, a następnie kliknij Zmień uprawnienia lub Zapisz, aby zastosować.
Zmiana uprawnień plików

Na serwerach z dostępem SSH możesz zastosować prawidłowe uprawnienia rekurencyjnie za pomocą dwóch poleceń:

find /path/to/wordpress -type f -exec chmod 644 {} ;
find /path/to/wordpress -type d -exec chmod 755 {} ;

Zastąp /path/to/wordpress rzeczywistą ścieżką główną swojej witryny. Pełny, zalecany przez WordPress wykaz uprawnień znajdziesz w przewodniku Hardening WordPress na WordPress.org.

Fix 7: Zresetuj role użytkowników WordPress do wartości domyślnych

Gdy opcja wp_user_roles w bazie danych WordPressa jest uszkodzona lub usunięta, WordPress nie może rozpoznać uprawnień żadnego użytkownika — w tym administratorów. Powoduje to błąd „nie masz uprawnień" w całej witrynie i różni się od utraty roli przez pojedyncze konto (Fix 3).

Przez WP-CLI (najszybciej, wymaga dostępu SSH):

wp eval 'delete_option("wp_user_roles"); require_once(ABSPATH . "wp-admin/includes/schema.php"); populate_roles();'

populate_roles() to kanoniczna funkcja WordPressa do odtwarzania domyślnych ról użytkowników; znajduje się w wp-admin/includes/schema.php i nie jest ładowana automatycznie, stąd require_once.

Przez phpMyAdmin:

  1. Otwórz phpMyAdmin i wybierz swoją bazę danych WordPressa.
  2. Otwórz tabelę wp_options (Twój prefiks tabeli może różnić się od wp_).
  3. Wyszukaj wiersz, w którym option_name = 'wp_user_roles'.
  4. Jeśli wiersza brakuje lub option_value zawiera a:0:{}, tabela ról jest uszkodzona.
  5. Usuń wiersz. WordPress odtworzy domyślne role przy następnym wczytaniu strony.

Kanoniczną listę ról WordPressa i ich uprawnień znajdziesz w dokumentacji Roles and Capabilities na WordPress.org.

Fix 8: Przełącz się na domyślny motyw

Plik functions.php motywu może nieumyślnie odebrać uprawnienia rolom użytkowników. Widzieliśmy, jak dzieje się to, gdy niestandardowy motyw stosuje remove_role() lub remove_cap() z błędem logicznym albo gdy aktualizacja motywu wprowadza konflikt z systemem uprawnień WordPressa.

Jeśli masz dostęp do administracji WordPressa:

  1. Przejdź do Wygląd → Motywy.
  2. Włącz domyślny motyw WordPressa, taki jak Twenty Twenty-Five.
  3. Odśwież stronę, która zwracała błąd.

Jeśli jesteś zablokowany:

  1. Połącz się przez SFTP lub Menedżera plików cPanel.
  2. Przejdź do wp-content/themes/.
  3. Zmień nazwę folderu aktywnego motywu — na przykład mythememytheme-disabled.
  4. WordPress przy następnym żądaniu przełączy się na ostatnio zainstalowany domyślny motyw.

Jeśli po zmianie motywu błąd zniknie, problem tkwi w pliku functions.php Twojego motywu. Przejrzyj ostatnie commity lub aktualizacje tego pliku, zanim ponownie włączysz motyw.

Fix 9: Zainstaluj ponownie pliki rdzenia WordPressa

Jeśli żadne z powyższych rozwiązań nie działa, a błąd pojawił się bez wyraźnego wyzwalacza, dostęp może blokować uszkodzony plik rdzenia WordPressa, uniemożliwiając weryfikację uwierzytelniania. Ponowna instalacja plików rdzenia zastępuje wszystkie pliki PHP WordPressa bez naruszania motywów, wtyczek ani przesłanych mediów.

  1. Pobierz najnowszą paczkę WordPressa ze strony wordpress.org/download.
  2. Rozpakuj archiwum na swoim komputerze.
  3. Usuń folder wp-content z rozpakowanej paczki — nie przesyłaj tego folderu.
  4. Prześlij wszystkie pozostałe pliki z paczki do katalogu głównego serwera, nadpisując istniejące pliki WordPressa.

Twój plik wp-config.php nie jest częścią paczki rdzenia i nie zostanie nadpisany, dopóki nie zastąpisz go ręcznie. Twoja baza danych, biblioteka mediów, motywy i wtyczki pozostają nienaruszone.

Bezpiecznie testuj rozwiązania z WP STAGING

Zanim wprowadzisz którąkolwiek z tych zmian na działającej witrynie — zwłaszcza zmianę nazwy .htaccess, reset uprawnień plików czy modyfikację ról użytkowników w bazie danych —, bezpieczniej jest najpierw odtworzyć błąd na kopii stagingowej. Jeśli rozwiązanie spowoduje niezamierzony skutek uboczny, Twoja witryna produkcyjna pozostaje nietknięta.

WP STAGING pozwala utworzyć witrynę stagingową z działającej instalacji WordPressa w kilku kliknięciach. Sklonuj środowisko produkcyjne, odtwórz błąd dostępu na stagingu, zastosuj rozwiązanie i potwierdź, że działa, zanim ruszysz produkcję. Jest to szczególnie przydatne w przypadku rozwiązań na poziomie bazy danych z Fix 7, gdzie błędny krok na działającej witrynie może jednocześnie zablokować wszystkich użytkowników.

Podsumowanie

Błąd „Przepraszamy, nie masz uprawnień dostępu do tej strony" ma krótką listę przyczyn źródłowych: nieprawidłowa rola użytkownika, uszkodzony plik .htaccess, nieprawidłowe uprawnienia plików, konflikt wtyczek lub konflikt motywu. Przejdź przez powyższe rozwiązania, zaczynając od sekcji, która odpowiada Twojej sytuacji. Jeśli dostęp zostanie przywrócony po Fix 4 (wtyczki) lub Fix 8 (motyw), zidentyfikuj konkretną wtyczkę lub zmianę motywu, zanim ponownie włączysz ją na produkcji.

Powiązane artykuły

Thomas Maier

Autor: Thomas Maier

You know me as a publisher, developer, or business owner.
Built the largest German platform for word games and crosswords.
Built the popular Advanced Ads WordPress plugin to effectively monetize websites.
Currently back to the roots developing the Image Source Control plugin for WordPress to manage image attributions, captions, and cleaning up the media library.