Ver Mensaje Individual
  #1 (permalink)  
Antiguo 15/10/2013, 11:43
Pantaláimon
 
Fecha de Ingreso: julio-2006
Ubicación: Barcelona
Mensajes: 244
Antigüedad: 18 años, 5 meses
Puntos: 32
permisos en cache, log y directorio del proyecto.

Buenas, tengo un verdadero lío a la hora de gestionar los permisos cuando creo un proyecto symfony. De momento estoydesarrollando un proyecto en mi ordenador personal y no tiene mucha importancia. Pero no me importaría ya de paso saber que políticas seguir cuando suba un proyecto a un hosting.

Tengo un servidor apache2 instalado en Ubuntu. El problema surge una vez sigo una política de crear el proyecto fuera de la carpeta /var/www y luego mediante la creación de un host virtual enlazar sólo la parte pública( /home/pantalaimon/ruta/al/proyecto/web ).
El conflicto que surge entonces es que el directorio del proyecto tiene permisos de mi usuario pantalaimon mientras que apache2 trabaja con los permisos de www-data. Creo que por esta razón al acceder al proyecto via servidor virtual, me mandaba algun error.
Esto lo acabé solucionando dando permisos al grupo www-data al proyecto y añadiendo mi usuario pantalaimon al grupo www-data. Y dando permisos de lectura y escritura a los directorios app/cache y app/log con el grupo www-data.

De esta manera la cosa me ha ido funcionando hasta que he tenido que usar scripts de consola como:
Código BASH:
Ver original
  1. php symfony cache:clear
  2. php app/console doctrine:database:create
Estos scripts no me funcionaban por no tener los permisos adecuados. He solucionado este problema evitando el problema de 2 maneras:
1) Ejecutar los scripts con sudo. Pero de esta manera los cache y logs acaban transformandose en ficheros de root.
2) Como root, dar permisos de grupo y usuaria a pantalaimon para los directorios /cache y /logs. De esta manera he podido ejecutar los scripts sin sudo.

En fin, tengo un lío muy grande. Seguramente por mi desconocimiento sobre los permisos de los sistemas Unix y por mi desconocimiento de apache2. Me gustaría saber cual seria la manera correcta y segura de asignar permisos y que pueda trabajar sin hacer -desde mi punto de vista- estos trapicheos.

Un saludo y gracias

Última edición por Pantaláimon; 15/10/2013 a las 11:50