Jak naprawić & lsquo; Zabronione - nie masz uprawnień dostępu do tego serwera ani dostępu do tego serwera & rsquo; w domenie po skonfigurowaniu Apache?

Apache to oprogramowanie serwera WWW, z którego korzysta prawie 67% wszystkich serwerów WWW na świecie. To oprogramowanie jest opracowywane i dystrybuowane przez Apache Software Distribution. Jest open-source i dostępny za darmo. Apache jest szybki, bezpieczny i niezawodny, co jest jednym z powodów jego popularności. Jednak całkiem niedawno wielu użytkowników napotykało błąd „ Zabronione - nie masz uprawnień dostępu / na tym serwerze ” podczas próby skonfigurowania Apache dla swojej domeny.

Co powoduje błąd „Dostęp zabroniony - nie masz pozwolenia na dostęp / na tym serwerze”?

Po otrzymaniu wielu zgłoszeń od wielu użytkowników postanowiliśmy zbadać problem i opracować zestaw rozwiązań, aby całkowicie go naprawić. Przyjrzeliśmy się również powodom, dla których jest uruchamiany, i wymieniliśmy je w następujący sposób.

  • Nieprawidłowe ustawienia katalogu globalnego : Możliwe, że ustawienia katalogu globalnego nie zostały poprawnie skonfigurowane, co nie pozwala na wystarczającą ilość dyrektywy dla witryny. Jeśli witryna nie ma poprawnej dyrektywy, może to spowodować ten błąd.
  • Nieprawidłowe uprawnienia : Apache wymaga uprawnień do głównego folderu katalogu, aby działać poprawnie, jeśli te uprawnienia nie zostaną przyznane, może wystąpić błąd.
  • Brak nazwy użytkownika : w „httpd.conf” w niektórych przypadkach należy wprowadzić rzeczywistą nazwę użytkownika, aby pozbyć się błędu. To działa dla niektórych osób, a dla niektórych nie.

Teraz, gdy masz już podstawową wiedzę na temat natury problemu, przejdziemy do rozwiązań. Upewnij się, że wykonujesz je w określonej kolejności, w jakiej są prezentowane.

Rozwiązanie 1: Zmiana ustawień katalogu globalnego

Aby rozwiązać ten problem, należy poprawnie skonfigurować niektóre ustawienia. Dlatego w tym kroku dodamy dyrektywę opcji w ustawieniach katalogu globalnego, która znajduje się w katalogu „ httpd . conf ”lub„ httpd - vhosts . conf ”w zależności od użytkownika. Za to:

  1. Gdy znajdziesz się w katalogu „ httpd . conf ”lub „ httpd-vhosts.conf ”, poszukaj ustawień katalogu , powinny one być podobne do poniższego kodu.
     Opcje FollowSymLinks AllowOverride All Order deny, allow Allow from all 

    Uwaga: Jest możliwe, że kod został „ Deny From All ” zamiast „ Zezwól Od All „. Ważne jest, aby zmienić go na „ Zezwalaj od wszystkich ” lub „ Wymagaj wszystkich przyznanych ”, jak wskazano poniżej.

  2. Upewnij się, że dodałeś wierszOptions Indexes FollowSymLinks Includes ExecCGI ” w taki sposób, aby wyglądał podobnie do poniższego kodu.
     #Options FollowSymLinks Opcje Indeksy FollowSymLinks Zawiera ExecCGI AllowOverride All Order deny, allow Allow from all 
  3. Sprawdź, czy problem nadal występuje.
  4. Jeśli problem nie zostanie rozwiązany modyfikacji kodu poprzez usunięcie „ Zezwalaj z All ” na „ Wymagaj Wszystko prawda „.
  5. Sprawdź, czy problem nadal występuje

Rozwiązanie 2: Zmiana uprawnień

Gdy użytkownik łączy Apache ze swoją domeną, zapewnia oprogramowaniu uprawnienia do odczytu i zapisu plików. Ważne jest, aby te uprawnienia były udzielane prawidłowo. Poniżej wskażemy właściwy sposób nadawania uprawnień.

  1. Zwykle użytkownicy zapewniają uprawnienia w następujący sposób.
    chgrp -R www-data / nazwa użytkownika / home / Dropbox / myamazingsite / chmod -R 2750 / username / home / Dropbox / myamazingsite /
  2. Te polecenia są błędne i należy je zastąpić
    chgrp -R www-data / nazwa użytkownika chmod -R 2750 / nazwa_użytkownika
  3. Pamiętaj też, że używasz poprawnego poziomu „ chmod ”, użyj takiego, który zapewnia użytkownikom uprawnienia do odczytu, na przykład „ chmod 755 ”.
  4. Sprawdź, czy po wypróbowaniu sugestii problem nadal występuje.

Rozwiązanie 3: dodanie nazwy użytkownika

W katalogu „ httpd . conf ”, pamiętaj, aby dodać dokładną nazwę użytkownika zamiast słów „ Użytkownik ” lub „ Grupa ”. W niektórych przypadkach dodanie nazwy użytkownika rozwiązuje problem.