Hogyan javíthatom ki a 403 hibát, amelyet az XAMPP-vel kapok, miközben a mod_userdir-t használom?
On december 1, 2020 by admin Az Arch Linux rendszert futtatom, és úgy döntöttem, hogy az XAMPP-t használom, hogy weboldalakat tudjak létrehozni és tesztelni. Mindenesetre követtem a webhelyen megadott utasításokat, és kibontottam a /opt/lampp
fájlba, és a /opt/lampp/etc/httpd.conf
sorban is megjegyzést tettem, tehát mod_userdir
engedélyezve lesz.
Most, amikor megpróbálom elérni a public_html
(<
http://localhost/~user ), ezt a hibát kapom:
Access forbidden! You don"t have permission to access the requested object. It is either read-protected or not readable by the server. If you think this is a server error, please contact the webmaster. Error 403
Hogyan jutok hozzá ez működni fog?
Válasz
A public_html fájlt és az ott található fájlokat olvashatóvá kell tenni a webszerver számára.
Az egyik mód a chmod o+x /home/user
futtatása (mindenki számára lehetővé teszi a váltást az otthoni könyvtárra) és a chmod -R o+rX /home/user/public_html
(nyilvánossá tétele_html futtatása) és az ott mindenki által olvasható fájlokat).
Ha jobb hozzáférés-vezérlésre van szüksége, használja az ACL-eket.
Válasz
Ezt kell használnia
<Directory "/Users/*/Sites"> Options Indexes FollowSymLinks AllowOverride All Require all granted </Directory>
győződjön meg róla, hogy a Require all granted
szót használja a
Order allow,deny Allow from all
apache használatakor> 2.4
Megjegyzések
- Ez megcsalta. De vajon miért nincs ez az általam talált oktatóanyagok között? És mit jelent a " minden megengedett " megkövetelése?
Válasz
Az alapértelmezett httpd.conf
fájl nem teszi elérhetővé az összes könyvtárat:
<Directory /> Options FollowSymLinks AllowOverride None Order deny,allow Deny from all </Directory>
Be kell állítania az Apache-t, hogy hozzáférést biztosítson a könyvtárához (címtáraihoz):
<Directory "/srv/httpd/htdocs"> Order allow,deny Allow from all </Directory>
Ez minimum. Lehet, hogy meg kell tennie néhányat egyéb dolgok. Szerezd meg a 403-as választ, majd nézd meg a /var/log/httpd/error_log
(vagy bárhová is írja be az XAMPP) oldalt, és nézd meg, mi történt.
Vélemény, hozzászólás?