Apache me da 403 Acceso prohibido cuando DocumentRoot apunta a dos unidades diferentes
-
01-07-2019 - |
Pregunta
Recibo un acceso 403 prohibido cuando intento abrir una página en un vhost donde la raíz del documento se encuentra en una unidad diferente a la de Apache.Lo instalé usando la versión apachefriends.Este es mi archivo httpd-vhosts.conf:
NameVirtualHost 127.0.0.1
u003CVirtualHost 127.0.0.1>Servername foo.localhost DocumentRoot "c:/xampp/htdocs/foo/public"u003C/VirtualHost>
u003CVirtualHost 127.0.0.1>ServerName Bar.localHost DocumentRoot "F:/Bar/Public"u003C/VirtualHost>
Al abrir bar.localhost en mi navegador, Apache me da 403 Acceso prohibido.Intenté configurar muchos derechos de acceso diferentes, incluso derechos completos para todos, pero nada de lo que intenté ayudó.
Editar:¡Gracias!Para referencia futura, agregue 'Índices de opciones' para mostrar los índices del directorio.
Solución
no necesitabas
Options Indexes FollowSymLinks MultiViews Includes ExecCGI
AllowOverride All
Order Allow,Deny
Allow from all
Require all granted
lo único que necesitas es...
Require all granted
...dentro de la sección del directorio.
Consulte el lado de actualización de Apache 2.4:
Otros consejos
En algún lugar, deberá decirle a Apache que las personas pueden ver el contenido de este directorio.
<Directory "F:/bar/public">
Order Allow,Deny
Allow from All
# Any other directory-specific stuff
</Directory>
Para Apache 2.4.2:Estuve obteniendo 403:Prohibido continuamente cuando intentaba acceder a WAMP en mi escritorio de Windows 7 desde mi iPhone a través de WiFi.En uno Blog, encontré la solución - agregar Requerir todo concedido después Permitir todo en el <Directorio> sección.Entonces así es como mi <Directorio> La sección se ve dentro de <VirtualHost>
<Directory "C:/wamp/www">
Options Indexes FollowSymLinks MultiViews Includes ExecCGI
AllowOverride All
Order Allow,Deny
Allow from all
Require all granted
</Directory>
Lo he solucionado eliminando el siguiente código de
C:\wamp\bin\apache\apache2.4.9\conf\extra\httpd-vhosts.conf archivo
<VirtualHost *:80>
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot "c:/Apache24/docs/dummy-host.example.com"
ServerName dummy-host.example.com
ServerAlias www.dummy-host.example.com
ErrorLog "logs/dummy-host.example.com-error.log"
CustomLog "logs/dummy-host.example.com-access.log" common
</VirtualHost>
<VirtualHost *:80>
ServerAdmin webmaster@dummy-host2.example.com
DocumentRoot "c:/Apache24/docs/dummy-host2.example.com"
ServerName dummy-host2.example.com
ErrorLog "logs/dummy-host2.example.com-error.log"
CustomLog "logs/dummy-host2.example.com-access.log" common
</VirtualHost>
Y agregado
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot "c:/wamp/www"
ServerName localhost
ErrorLog "logs/localhost-error.log"
CustomLog "logs/localhost-access.log" common
</VirtualHost>
Y ha funcionado a las mil maravillas