Wyszukiwanie w witrynie

Jak naprawić zabroniony błąd Apache 403 w systemie Linux


Serwer WWW Apache jest jednym z najpopularniejszych i najczęściej używanych serwerów WWW typu open source dzięki swojej stabilności i niezawodności. Serwer WWW ma ogromny rynek, zwłaszcza na platformach hostingowych.

Tak czy inaczej, po skonfigurowaniu witryny internetowej w przeglądarce może pojawić się błąd „Zabronione – nie masz uprawnień dostępu/na tym serwerze”. Jest to dość powszechny błąd i spora część użytkowników doświadczyła go podczas testowania swojej witryny. Więc co to za błąd?

Co to jest zabroniony błąd 403?

Nazywany także Zakazanym błędem 403, „Zakazany błąd” Apache to błąd wyświetlany na stronie internetowej, gdy próbujesz uzyskać dostęp do witryny internetowej, która jest ograniczona lub zabroniona .

Jest to ustandaryzowany kod stanu HTTP wskazujący, że serwer WWW rozumie żądanie, ale nie może autoryzować dostępu ze względu na problemy z uprawnieniami.

Zwykle jest rozpryskiwany w przeglądarce, jak pokazano.

Ponadto błąd może objawiać się w przeglądarce na kilka sposobów, jak wskazano poniżej:

  • Błąd HTTP 403 – Zabronione
  • Zabronione: nie masz uprawnień dostępu do [katalogu] na tym serwerze
  • 403 Zabronione
  • Odmowa dostępu Nie masz uprawnień dostępu
  • 403 zabronione żądania zabronione przepisami administracyjnymi

Co powoduje zabroniony błąd 403?

Zabroniony błąd 403” występuje z następujących głównych powodów:

1. Nieprawidłowe uprawnienia do plików/katalogów

Ten błąd może zostać wywołany z powodu nieprawidłowych uprawnień do plików/folderów w katalogu webroot. Jeśli domyślne uprawnienia do plików nie są dostosowane tak, aby zapewnić użytkownikom dostęp do plików witryny, ryzyko pojawienia się tego błędu w przeglądarce internetowej jest wysokie.

2. Błędna konfiguracja plików konfiguracyjnych Apache

Ten błąd można również przypisać błędnej konfiguracji jednego z plików konfiguracyjnych Apache. Może to być nieprawidłowy parametr, który został dołączony lub brak dyrektyw w pliku konfiguracyjnym.

3. Błędna konfiguracja pliku .htaccess

Inną częstą przyczyną napotkania tego kodu odpowiedzi HTTP jest uszkodzony lub nieprawidłowo skonfigurowany plik .htaccess. W takim przypadku błąd 403 Forbidden zwykle pojawia się po modyfikacji pliku .htaccess.

Zazwyczaj użytkownicy mogą rozwiązać ten problem, generując nowy plik .htaccess lub poprawiając jego konfigurację.

Naprawianie błędu Apache „403 Forbidden Error”

Jeśli napotkałeś ten błąd, oto kilka kroków, które możesz podjąć, aby go naprawić.

1. Dostosuj uprawnienia do plików i własność katalogu Webroot

Wiadomo, że nieprawidłowe uprawnienia do plików i własność katalogów ograniczają dostęp do plików witryny. Po pierwsze, pamiętaj o rekurencyjnym przypisaniu uprawnień do pliku do katalogu webroot, jak pokazano.

Katalog webroot powinien zawsze mieć uprawnienia EXECUTE, a plik index.html powinien mieć uprawnienia READ.

cd /path/to/webroot/directory 
sudo find . -type d -exec chmod 755 {} \;
sudo find . -type f -exec chmod 644 {} \;

Powyższe polecenie find służy do znalezienia wszystkich katalogów (folderów) i plików w bieżącym katalogu (.) i ustawienia ich uprawnień na 755 (katalogi) i 644 (pliki).

Dodatkowo dostosuj własność plików i katalogów do konkretnego użytkownika (tecmint) i grupuj www-data lub apache za pomocą polecenia chown, jak pokazano .

sudo chown -R tecmint:apache .

Na koniec załaduj ponownie lub zrestartuj serwer WWW Apache, aby zmiany zaczęły obowiązywać.

sudo systemctl restart apache2
OR
sudo systemctl restart httpd

Jeśli to nie rozwiąże problemu, przejdź do następnego kroku:

2. Dostosuj dyrektywy w głównym pliku konfiguracyjnym Apache

Jeśli korzystasz z dystrybucji Linuksa opartej na Debianie lub dystrybucji opartej na RHEL, otwórz główny plik konfiguracyjny Apache, zwykle o nazwie httpd.conf lub apache2.conf.

sudo nano /etc/httpd/httpd.conf       # For Apache on CentOS/Red Hat
sudo nano /etc/apache2/apache2.conf   # For Apache on Debian/Ubuntu

Znajdź sekcję odpowiadającą głównemu dokumentowi internetowemu Twojej witryny i upewnij się, że dyrektywa AllowOverride jest ustawiona na "All" . Dzięki temu pliki .htaccess mogą zastąpić ustawienia konfiguracyjne.

<Directory "/var/www/html">
    Options Indexes FollowSymLinks
    AllowOverride All
    Require all granted
</Directory>

Zamień ścieżkę /var/www/html, aby odpowiadała rzeczywistej ścieżce katalogu głównego dokumentów Twojej witryny.

Zapisz i wyjdź, a następnie uruchom ponownie Apache.

sudo systemctl restart httpd     # For Apache on CentOS/Red Hat
sudo systemctl restart apache2   # For Apache on Debian/Ubuntu

. Napraw konfigurację pliku .htaccess

Jeśli masz plik .htaccess w swoim katalogu internetowym, sprawdź jego konfigurację. Źle skonfigurowane ustawienia konfiguracyjne lub jakiekolwiek błędy składniowe mogą uniemożliwić użytkownikom dostęp do określonych treści internetowych.

Skomentuj linie lub tymczasowo usuń plik, aby sprawdzić, czy to rozwiąże problem.

Jeśli po wypróbowaniu wszystkich tych kroków nadal pojawia się błąd, sprawdź konfigurację plików hosta wirtualnego.

Mamy szczegółowe artykuły na temat konfigurowania pliku hosta wirtualnego Apache na:

Rozwiązanie błędu „Zabronione – nie masz uprawnień dostępu/na tym serwerze” polega na sprawdzeniu i dostosowaniu uprawnień do plików, własności i konfiguracji serwera.

Mam nadzieję, że podane kroki pomogły Ci usunąć błąd 403.