"Prepovedano - Nimate dovoljenja za dostop/na tem strežniku" Napaka
Spletni strežnik Apache je zaradi svoje stabilnosti in zanesljivosti eden najbolj priljubljenih in najpogosteje uporabljenih spletnih strežnikov odprtega vira. Spletni strežnik ima velik trg, zlasti na platformah za spletno gostovanje.
Kakor koli že, lahko po nastavitvi spletnega mesta v brskalniku dobite napako »Prepovedano - Nimate dovoljenja za dostop/na tem strežniku«. To je precej pogosta napaka in dober del uporabnikov jo je doživel med testiranjem svojega spletnega mesta. Torej, kaj je to napaka?
Demistifikacija prepovedane napake
Apacheova „Prepovedana napaka“, ki se imenuje tudi prepovedana napaka 403, je napaka, ki se prikaže na spletni strani, ko poskušate dostopati do omejenega ali prepovedanega spletnega mesta. Običajno se brizga v brskalnik, kot je prikazano.
Poleg tega se lahko napaka v brskalniku pokaže na več načinov, kot je navedeno spodaj:
- Napaka HTTP 403 - prepovedano
- Prepovedano: Nimate dovoljenja za dostop do [imenika] na tem strežniku
- 403 prepovedano
- Dostop zavrnjen Nimate dovoljenja za dostop
- 403 prepovedana zahteva, prepovedana z upravnimi pravili
Kaj torej povzroča takšne napake?
Do "Prepovedane napake 403" pride zaradi naslednjih glavnih razlogov:
Ta napaka se lahko sproži zaradi napačnih dovoljenj za datoteke/mape v imeniku webroot. Če privzeta dovoljenja za datoteke niso prilagojena, da bi uporabnikom omogočila dostop do datotek spletnega mesta, je verjetnost, da se ta napaka pojavi v spletnem brskalniku, velika.
To napako lahko pripišemo tudi napačni konfiguraciji ene od konfiguracijskih datotek Apache. Lahko gre za napačen parameter, ki je bil vključen ali manjkajoče direktive v konfiguracijski datoteki.
Odpravljanje '403 prepovedane napake'
Če ste naleteli na to napako, je tukaj nekaj korakov, ki jih lahko odpravite.
Znano je, da napačna dovoljenja datotek in lastništvo imenika omejujejo dostop do datotek spletnih mest. Torej, najprej poskrbite, da boste dovoljenja za datoteke rekurzivno dodelili imeniku webroot, kot je prikazano. Imenik webroot mora imeti vedno dovoljenja EXECUTE, datoteka index.html
pa mora imeti dovoljenja READ.
$ sudo chmod -R 775 /path/to/webroot/directory
Poleg tega prilagodite lastništvo imenika, kot je prikazano:
$ sudo chown -R user:group /path/to/webroot/directory
Kjer je uporabnik običajni prijavljeni uporabnik in je skupina www-data
ali apache
.
Na koncu ponovno naložite ali znova zaženite spletni strežnik Apache, da bodo spremembe začele veljati.
$ sudo systemctl restart apache2
Če težave ne odpravite, nadaljujte z naslednjim korakom:
V glavni konfiguracijski datoteki Apache /etc/apache2/apache2.conf
preverite, ali imate ta blok kode:
<Directory /> Options FollowSymLinks AllowOverride None Require all denied </Directory> <Directory /usr/share> AllowOverride None Require all granted </Directory> <Directory /var/www/> Options Indexes FollowSymLinks AllowOverride None Require all granted </Directory>
Shranite in zapustite, nato pa znova zaženite Apache.
Če uporabljate Apache v sistemih RHEL/CentOS, poskrbite, da boste sprostili dostop do imenika /var/www
v glavni /etc/httpd/conf/httpd.conf
Konfiguracijska datoteka Apache.
<Directory "/var/www"> AllowOverride None Require all granted </Directory>
Nato shranite vse spremembe in znova naložite Apache.
Če se po poskusu vseh teh korakov še vedno pojavlja napaka, preverite konfiguracijo datotek navideznega gostitelja. Imamo podroben članek o tem, kako lahko v CentOS 8 konfigurirate datoteko navideznega gostitelja Apache.
Upam, da so vam navedeni koraki pomagali odpraviti napako 403.