Apache2 "Requerir todo otorgado" no funciona


12

Tengo una nueva instalación de Apache2 en las pruebas de Debian y configuré un host virtual en un directorio como este:

<Directory "/path/to/project">
    Options Indexes FollowSymLinks MultiViews
    AllowOverride All
    Require all granted
</Directory>

Sin embargo, me muestra un error prohibido 403 cuando accedo y el registro de errores muestra:

[Mon Sep 23 22:07:57.249276 2013] [authz_core:debug] [pid 8599] mod_authz_core.c(802): [client 127.0.0.1:49057] AH01626: authorization result of Require all denied: denied
[Mon Sep 23 22:07:57.249349 2013] [authz_core:debug] [pid 8599] mod_authz_core.c(802): [client 127.0.0.1:49057] AH01626: authorization result of <RequireAny>: denied
[Mon Sep 23 22:07:57.249361 2013] [authz_core:error] [pid 8599] [client 127.0.0.1:49057] AH01630: client denied by server configuration: /path/to/project/some_file

¿Por qué muestra "resultado de Requerir todo denegado: denegado" si estoy usando "Requerir todo otorgado" ?

Los archivos pueden ser leídos por cualquier usuario y en caso de que intente cambiar el propietario a Apache (www-data) sin suerte. Además, el host predeterminado http://localhostfunciona normalmente y phpmyadmin http://localhost/phpmyadmintambién funciona.

Toda la ayuda que he encontrado en Internet se trata de reemplazar la directiva Order con Require. Ya lo hice. ¿Cuál podría ser el problema ahora?


A mí me parece correcto. ¿Estás seguro de que no es otra directiva más específica con un Requerir todo denegado?
Richard Salts

Respuestas:


5

Aquí hay dos cosas para probar:

1) Ejecute apachectl -tpara verificar que la sintaxis de su archivo sea válida.

2) Ejecutar apachectl -Spara mostrar qué archivos se están analizando.

Por ejemplo, puede estar editando /usr/local/etc/apache2/2.4/httpd.conf y eso es todo. ... pero si ejecuta apachectl -S puede ver:

VirtualHost configuration:
*:80                   localhost (/private/etc/apache2/extra/httpd-vhosts.conf:23)

es decir. El host virtual está anulando su httpd.conf, y puede contener uno propio Require all deniedo similar.


3

Ha configurado la autorización, pero no la autenticación. Por lo tanto, si bien 'Requerir todo otorgado' dará acceso a todos los usuarios autenticados, sus usuarios en realidad no se autentican.


99
Entonces, ¿dónde debe configurar la autenticación? No muy claro ...
edi9999

2
Aunque técnicamente correcto, esto no responde la pregunta. Require all grantedespecíficamente permite todos los accesos y no necesita ninguna autenticación. No tiene sentido autenticarse cuando metafóricamente abre las puertas de par en par.
Martijn Heemels

2

Como está utilizando la AllowOverride Alldirectiva, también puede tener un .htaccessarchivo /path/to/project/. Este puede contener una directiva anulada.

Compruebe también si no tiene algún otro parámetro en un VHost por ejemplo.


Estaba luchando con este error. Después de mucho revisar todos los archivos de configuración de Apache, encontré un archivo .htaccess con contenido no válido. Ninguno de los mensajes apuntaba a esto.
Dustin Butler

1

Después de haber instalado Wampserver 32, tuve el mismo problema de ser rechazado por Apache.

He comprobado e intentado modificar el httpd.confarchivo de muchas maneras durante 3 días sin suerte, recorriendo los tutoriales de Apache y los foros de Internet con el famoso error:

AH01630: cliente denegado por la configuración del servidor

Estaba bastante seguro de que no definí ningún VirtualHost y ninguno se veía en el archivo httpd.conf.

Finalmente, configuré el servidor para el archivo de error de "depuración", que me dio el mensaje más interesante:

AH01626: resultado de la autorización de Requerir local: denegado

lo que a su vez me llevó a esta publicación.

Y ahí estaba, oculto en el C:\wamp\bin\apache\apache2.4.18\conf\extra\httpd-vhosts.confarchivo: un VirtualHost no deseado con un "Requerir local" explícito que, por supuesto, rechazó todas mis consultas desde fuera del servidor.

Ahora, he vaciado este archivo hasta que pueda necesitar VirtualHost, y funciona bien. Al final, Wampserver me resulta bastante extraño no solo preconfigurar este archivo sin notificar al usuario, sino también establecer el valor predeterminado para que el "servidor" no pueda servir nada.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.