¿Qué permisos debo dar para la configuración de mi servidor?

3

Estoy intentando tener una configuración de servidor para mi aplicación web localmente en mi MacBook Pro. Instalé Apache, PHP con éxito y verifiqué el código de mi aplicación web en /var/www location. Ahora hay un script en mi aplicación que escribe un archivo en /var/www/someDir . Para ello estoy usando la siguiente línea:

$file = fopen($_SERVER['DOCUMENT_ROOT']."/abc.ini", "w");

Y en la ejecución, veo el siguiente error en el registro de errores.

PHP Warning: fopen(/var/www/someDir/abc.ini): failed to open stream: Permission denied in /private/var/www/myscript.php on line 6

someDir es propiedad del usuario abhilash.goje (ese soy yo) y del grupo wheel . He intentado dar los siguientes permisos.

$sudo chmod -R 755 www     -> Did not resolve the issue
$sudo chmod -R 775 www     -> Did not resolve the issue
$sudo chmod -R 777 www     -> Resolved the issue, but not safe.

el permiso 777 funciona pero no prefiero usar esta solución ya que no es del todo segura. Por favor, déjame, ¿cómo configuro los permisos correctos para esta carpeta?

¡Gracias de antemano!

    
pregunta Goje87 08.07.2012 - 22:08

1 respuesta

6

Apache es el proceso que necesita tener los permisos adecuados para acceder a /var/www . Apache es típicamente el usuario _www del grupo _www en MacOS. Verifica esto con:

 grep -e '^Group\|^User' /etc/apache2/httpd.conf

Deben imprimirse dos líneas. Mi salida se ve como:

User _www
Group _www

Esto significa que en mi sistema, los procesos de Apache se ejecutan como usuario _www con el grupo _www . Si está usando otra configuración, verifique el archivo de configuración apropiado para los mismos parámetros y reemplace _www en la siguiente solución si la suya es diferente.

  1. Cambie el grupo de /var/www con: chgrp -R _www /var/www
  2. Cambie los permisos para agregar escritura de grupo con: chmod -R 775 /var/www

Eso debería arreglar el error.

Como paso adicional, puedes cambiar la propiedad de /var/www a _www y luego agregarte a ese grupo para mantener tus privilegios de lectura y escritura.

    
respondido por el ephsmith 09.07.2012 - 08:22

Lea otras preguntas en las etiquetas