Pregunta

Es difícil encontrar respuestas específicas de Mac a esta pregunta en la web, por lo que espero que alguien pueda poner este para descansar por mí. Mis permisos están arruinados en mis sitios y no estoy seguro de cómo arreglarlos sin simplemente golpear un 777 recursivo en todo lo que obviamente es incorrecto.

¡Gracias!

¿Fue útil?

Solución

Esta es la forma más restrictiva y segura que he encontrado, como se explica aquí para hipotética ~/my/web/root/ Directorio para su contenido web:

  • Para cada directorio principal que conduce a su raíz web (por ejemplo, ~/my, ~/my/web, ~/my/web/root):
    • chmod go-rwx DIR (Nadie más que el propietario puede acceder al contenido)
    • chmod go+x DIR (para permitir que "usuarios" incluyan _www "ingrese" el dir)
  • sudo chgrp -R _www ~/my/web/root (Todo el contenido web ahora es grupo _www)
  • chmod -R go-rwx ~/my/web/root (Nadie más que el propietario puede acceder al contenido web)
  • chmod -R g+rx ~/my/web/root (Todo el contenido web ahora es legible/ejecutable/Interable por _WWW)

Todas las demás soluciones dejan archivos abiertos a otros usuarios locales (que forman parte del grupo de "personal" y obviamente están en el grupo "O"/Otros). Estos usuarios pueden navegar libremente y acceder a configuraciones de DB, código fuente u otros detalles confidenciales en sus archivos y scripts de configuración web si tales son parte de su contenido. Si esto no es un problema para usted, entonces, por supuesto, vaya con una de las soluciones más simples.

Otros consejos

Si realmente no te gusta el terminal, aquí está la forma de GUI de hacer dkamins es decirte:

1) Vaya a su directorio de inicio de usuario (ludo sería mío) y del Expediente Menú Elija Conseguir información CMDyo En el inspector:

Get Info window Sharing & Permissions section

2) por alt/opción haciendo clic en el [+] Firmar Agregar el _www agrupar y establecer su permiso para solo lectura :

Get Info add Users & Groups highlighted and World Wide Web Server highlighted

  • ¡Por lo tanto, considere (buena práctica) no almacenar información personal en la raíz de su carpeta de inicio de usuario (y disco duro)!
  • Puede omitir este paso si el grupo ** Todos ** tiene ** solo solo lectura ** Permiso, pero desde AirDrop la carpeta **/public/Drop Box ** es mayormente inútil ...

3) Muestre el Conseguir información Inspector de su usuario Sitios carpeta y reproducir el paso 2 y luego desde el submenú de acción de engranaje elija Aplicar a los artículos adjuntos ... :

Get Info action sub-menu Apply to enclosed Items... highlighted

Voilà 3 pasos y la única forma de GUI ...

Sé que esta es una publicación antigua, pero para cualquiera que se actualice a Mountain Lion (10.8) y experimente problemas similares, agregando FollowSymLinks a su archivo {nombre de usuario} .conf (in/etc/apache2/users/) hizo el truco para mí. Entonces el archivo se ve así:

<Directory "/Users/username/Sites/">
  Options Indexes MultiViews FollowSymLinks
  AllowOverride All
  Order allow,deny
  Allow from all
</Directory>

Hilo de 2 meses, ¡pero mejor tarde que nunca! El 10.6, tengo la carpeta de documentos de mi servidor web establecida en:

owner:root
group:_www
permission:755

_WWW es el usuario que ejecuta Apache en Mac OS X. Luego agregué un ACL para permitir permisos completos al grupo de administradores. De esa manera, aún puedo hacer cualquier cambio con mi usuario administrativo sin tener que autenticarse como root. Además, cuando quiero permitir que el servidor web escriba en una carpeta, simplemente puedo verse a 775, dejando a todos los que no sean root: _www con solo leer/ejecutar permisos (excluyendo cualquier ACL que haya aplicado)

En mi sistema 10.6:

vhosts folder:
 owner:root
 group:wheel
 permissions:755

vhost.conf files:
 owner:root
 group:wheel
 permissions:644

El propietario del usuario para mí es el usuario administrador y el grupo es _www y funciona con permisos establecidos en 775 para DIR y para archivos 664

Abra primero el terminal y luego vaya al Directorio de Web Server

cd /Library/WebServer/Documents

Y luego escriba esto y lo que hará es que dará read y write permiso

sudo chmod -R o+w /Library/WebServer/Documents

¡Esto seguramente funcionará!

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top