Wiele konfiguracji serwera WWW napotyka problemy związane z uprawnieniami do plików. Często powoduje to, że serwer jest niedostępny dla odwiedzających i objawia się błędem 403. Zwykle komunikat o błędzie ma postać „Zabronione: nie masz uprawnień dostępu / na tym serwerze”. Ten błąd może również ograniczyć dostęp do innych tras na serwerze, takich jak /directory.

Podobne problemy mogą również wystąpić z powodu problemów w pliku konfiguracyjnym Apache lub nawet z powodu uszkodzonego .htaccess plik. Ten przewodnik zawiera szczegółowe rozwiązania wszystkich tych problemów. Wypróbuj je pojedynczo, zaczynając od pierwszego rozwiązania.

Co powoduje ten błąd Apache 403?

Jest to dość powszechny błąd 403 na końcu Apache spowodowany mnóstwem problemów. Jednak w większości przypadków ten błąd występuje z powodu braku odpowiednich uprawnień potrzebnych do publicznego dostępu do witryny. Poza tym witryny WordPress często borykają się z tym problemem z powodu złego .htaccess plik.

Co więcej, od wersji 2.4 Apache wprowadzono pewne zmiany w działaniu dyrektyw. Może to również ograniczyć publiczny dostęp do Twojej witryny i spowodować zabroniony błąd 403.

instagram viewer

1. Napraw uprawnienia do plików, aby uniknąć błędu

Większość ludzi napotyka ten powszechny błąd 403 z powodu braku odpowiednich uprawnień. Jeśli administrator witryny zapomni włączyć dostęp do odczytu do świata zewnętrznego, użytkownicy końcowi nie będą mogli uzyskać dostępu do żądanego zasobu. Często jest to główna przyczyna tego błędu.

Jeśli jesteś administratorem witryny, musisz upewnić się, że pliki przeznaczone do publicznego dostępu mają odpowiednie uprawnienia do odczytu. W przeciwnym razie, jeśli napotkasz ten błąd w witrynie publicznej, poinformuj administratora witryny, aby rozwiązać ten problem.

Ustawienie prawidłowych uprawnień dla publicznie dostępnych plików może być nieco trudne. Dlatego administratorzy powinni zacząć od absolutnie zerowych uprawnień i dodawać je w razie potrzeby. Dobrym pomysłem jest posiadanie folderów z trybem uprawnień 755 i pliki z 644.

W przypadku prostej witryny katalogi muszą mieć wykonać uprawnienia, a pliki powinny mieć czytać pozwolenie. Upewnij się, że nie dajesz uprawnień do wykonywania na plikach. Za pośrednictwem takich plików złośliwi użytkownicy mogą uzyskać niepożądany dostęp do serwerów publicznych. Tryb uprawnień dla Czytać, pisać i Wykonać dostęp to odpowiednio 4, 2 i 1.

Tak więc tryb uprawnień 755 do katalogów oznacza, że ​​tylko właściciel ma pełny dostęp do zawartości katalogu. Użytkownicy grup i inne osoby mogą tylko czytać i wykonywać. Podobnie tryb uprawnień 644 dla plików zapewnia dostęp do odczytu i zapisu właścicielowi, a wszystkim innym dostęp tylko do odczytu.

Aby rozwiązać ten błąd, popraw uprawnienia do katalogu webroot. Poniższe polecenie używa narzędzie chmod aby ustawić uprawnienia do katalogu na 755.

sudo znajdź /var/www/html -type d -exec chmod 755 {} \;

To polecenie zakłada, że ​​używasz domyślnego katalogu głównego Apache do przechowywania swojej witryny. Jeśli używasz innego katalogu, zamień odpowiednio nazwę katalogu. Użyj poniższego polecenia, aby zmienić wszystkie uprawnienia do plików na 644.

sudo znajdź /var/www/html -type f -exec chmod 644 {} \;

Powyższe polecenie używa narzędzia find do lokalizowania poszczególnych plików i ustawia odpowiednie uprawnienia za pomocą chmod. Zakończenie {} \ przechowuje ścieżki plików zwrócone przez polecenie znajdowania, a średnik (;) oznacza koniec iteracji. Na koniec uruchom ponownie serwer Apache, aby zmiany zaczęły obowiązywać.

sudo systemctl restart apache2.service

To polecenie uruchamia ponownie serwer Apache na Ubuntu. Jednak wiele dystrybucji opartych na RPM, takich jak RHEL lub CentOS, instaluje Apache jako httpd. W przypadku takich systemów użyj zamiast tego następującego polecenia:

sudo systemctl zrestartuj httpd

2. Napraw plik .htaccess dla swojej witryny WordPress

.htaccess plik służy jako rozproszony plik konfiguracyjny i mówi Apache, jak radzić sobie z takimi rzeczami, jak zmiany konfiguracji na katalog. Czasami ten plik może ulec uszkodzeniu i może spowodować błąd „nie masz uprawnień dostępu na tym serwerze”.

Na szczęście, jeśli to właśnie powoduje błąd 403 na twoim serwerze, możesz to łatwo naprawić, tworząc nowy plik .htaccess. Aby utworzyć nowy plik .htaccess dla swojej witryny, najpierw zaloguj się do pulpitu WordPress. Następnie kliknij Ustawienia > Permalinki.

Nie musisz tutaj wprowadzać żadnych dodatkowych zmian. Wystarczy kliknąć click Zapisz zmiany przycisk, a WordPress wygeneruje dla Ciebie nowy plik .htaccess.

Więc za każdym razem, gdy napotkasz powyższy problem, spróbuj utworzyć nowy plik .htaccess. Metoda .htaccess zwykle działa dobrze w przypadku witryn WordPress.

3. Skonfiguruj dyrektywy w pliku konfiguracyjnym Apache

Apache 2.4 korzysta z nowego modułu konfiguracyjnego o nazwie mod_authz_host. Ten moduł udostępnia kilka nowych dyrektyw. Krótko mówiąc, realizuje to następujące zasady:

  • Wymagaj wszystkich przyznanych: Zezwól na wszystkie prośby
  • Wymagaj odmowy wszystkich: Odrzuć wszystkie prośby
  • Wymagaj hosta safe.com: Zezwalaj tylko na prośby z safe.com

Jeśli używasz Apache 2.4, upewnij się, że główny plik konfiguracyjny zawiera następujący blok kodu. Możesz sprawdzić zawartość tego pliku za pomocą prostego edytora tekstu, takiego jak Vim. Dodaj ten blok w pliku konfiguracyjnym, jeśli ich brakuje. Wtedy możesz zapisz i wyjdź z Vima.

vim /etc/apache2/apache2.conf

Opcje ŚledźSymLinks
Zezwól na zastąpienie Brak
Wymagaj odmowy wszystkich


Zezwól na zastąpienie Brak
Wymagaj wszystkich przyznanych


Opcje Indeksy FollowSymLinks
Zezwól na zastąpienie Brak
Wymagaj wszystkich przyznanych

Co więcej, jeśli korzystasz z serwera internetowego opartego na RHEL, musisz ułatwić dostęp do /var/www w pliku konfiguracyjnym Apache. Upewnij się więc, że /etc/httpd/conf/httpd.conf plik zawiera następujący blok kodu.

vim /etc/httpd/conf/httpd.conf

Zezwól na zastąpienie Brak
Wymagaj wszystkich przyznanych

Na koniec zrestartuj serwer Apache za pomocą jednego z następujących poleceń.

# dla Ubuntu i Debiana
sudo systemctl restart apache2.service
# dla RHEL i CentOS
sudo systemctl zrestartuj httpd

Napraw błąd uprawnień serwera Apache

Wiele osób napotyka powyższy problem podczas uzyskiwania dostępu do publicznych witryn internetowych lub konfigurowania własnych witryn. W tym przewodniku omówiono kilka poprawek tego problemu. W pierwszej kolejności należy zresetować uprawnienia systemu plików dla Apache. Jeśli błąd będzie się powtarzał nawet po zmianie uprawnień, spróbuj utworzyć nowy .htaccess pliku i upewnij się, że dyrektywy są poprawnie ustawione w pliku konfiguracyjnym Apache.

Istnieje wiele innych problemów, które mogą spowodować błąd po stronie serwera podobny do tego. Musisz być biegły w rozwiązywaniu problemów z serwerem Linux, aby Twój serwer działał w takich sytuacjach.

E-mail
Napraw problemy z serwerem Linux za pomocą tych 5 kroków rozwiązywania problemów

Uzyskaj kopię zapasową serwera Linux i uruchom go w ciągu kilku minut dzięki tym inteligentnym wskazówkom dotyczącym rozwiązywania problemów.

Czytaj dalej

Powiązane tematy
  • Linux
  • Serwer Apache
  • Serwer internetowy
  • Linux
  • Rozwiązywanie problemów
  • Błędy Linuksa
O autorze
Hossain Rubaiat (26 opublikowanych artykułów)

Rubaiat jest absolwentem CS z silną pasją do open-source. Oprócz tego, że jest weteranem systemu Unix, zajmuje się także bezpieczeństwem sieci, kryptografią i programowaniem funkcjonalnym. Jest zapalonym kolekcjonerem książek z drugiej ręki i ma nieustanny podziw dla klasycznego rocka.

Więcej od Rubaiata Hossaina

Zapisz się do naszego newslettera

Dołącz do naszego newslettera, aby otrzymywać porady techniczne, recenzje, bezpłatne e-booki i ekskluzywne oferty!

Jeszcze jeden krok…!

Potwierdź swój adres e-mail w e-mailu, który właśnie do Ciebie wysłaliśmy.

.