En mi máquina Mac OS 10.5, me gustaría configurar una subcarpeta de ~/Documentslike ~/Documents/foo/htmlpara ser http: // localhost / foo .
Lo primero que pensé hacer es usar Alias de la siguiente manera:
Alias /foo /Users/someone/Documents/foo/html
<Directory "/Users/someone/Documents/foo/html">
Options Indexes FollowSymLinks MultiViews
Order allow,deny
Allow from all
</Directory>
Esto me prohibió 403. En el error_log obtuve:
[error] [client ::1] (13)Permission denied: access to /foo denied
La subcarpeta en cuestión tiene acceso a chmod 755. Intenté especificar gustos como http: //localhost/foo/test.php , pero tampoco funcionó. Luego, probé la ruta del enlace simbólico.
Entró /Library/WebServer/Documentse hizo un enlace simbólico a ~/Documents/foo/html. La raíz del documento tiene
Options Indexes FollowSymLinks MultiViews
Esto todavía me tiene prohibido 403:
Symbolic link not allowed or link target not accessible: /Library/WebServer/Documents/foo
¿Qué más necesito para configurar esto?
Solución :
$ chmod 755 ~/Documents
En general, el wwwusuario del servicio debe poder ver la carpeta que se va a compartir y toda su carpeta ancestral .
apache-2.2
permissions
mac
http-status-code-403
Eugene Yokota
fuente
fuente

Respuestas:
Apuesto a que algún directorio por encima del que desea acceder no tiene permisos para permitir que Apache lo atraviese. Conviértase en el usuario con el que Apache se está ejecutando (
sudo -i -u apacheo lo que sea), luego intente cambiar al directorio de interés ylséste. Si no puede (como se esperaba), intente acceder a los directorios que se encuentran arriba, uno por uno, hasta que uno le permita entrar. El subdirectorio de eso es aquel que necesita tenero+xconfigurado. Enjabonar, enjuagar, repetir según sea necesario.fuente
sudo -i -u _wwwen OS X (dado que el usuario de Apache está _www en la configuración predeterminada de apache en OS X), entonces lo hagowhoami, todavía obtengo mi nombre de usuario, no _wwwsudo - www-data(para Ubuntu).Utilizar
+FollowSymlinksfuente
Verifique para asegurarse de que la bóveda de archivos no esté habilitada. Yo tuve el mismo problema. Intenté todo lo que pude encontrar. Nada funcionó. Pero después de una hora de tratar de resolver esto, recordé que tenía habilitado el depósito de archivos.
Deshabilitarlo resolvió el problema.
fuente
Verifique la propiedad del enlace simbólico. Como estás en Mac OS X, los propietarios de enlaces simbólicos pueden cambiarse. En
/Library/WebServer/Documentshacerls -lSi
~/Documents/foo/htmlse llama a su enlace simbólicofooy tiene permisos comoLuego, de manera predeterminada en OS X, Apache se ejecuta como el usuario _www y el grupo _www, por lo que en el caso mencionado anteriormente no podrá atravesar el enlace simbólico a
~/Documents/foo/htmlEjecutar
man 8 chownen su terminal del sistema, o mirar en línea chown hombreVerá que el uso de la
-hopción cambiará la propiedad del enlace simbólico en sí mismo, en lugar del archivo al que apunta (es la fuente). Entonces puedes hacer algo comoEsto cambiará el enlace sim a
y el grupo Apache _www podrá atravesar el enlace.
fuente
Verifique su directorio / Users (ls -l / Users) para ver los derechos de su usuario (alguien).
¿También está correctamente disponible el directorio 'Sitios' en localhost / ~ someone?
fuente