Tengo un escritorio de desarrollo que tiene instalados Ubuntu 10.04, Apache2 y PHP 5.3.2. Le di permisos 0777 a la carpeta raíz de mi aplicación web y Apache2 también se está ejecutando con el nombre de usuario actual. Peroa vecesaparece el siguiente error de archivos,
file_put_contents(/var/www/kohana_project/application/cache/kohana_find_file_paths): no se pudo abrir la transmisión: permiso denegado.
Para cada solicitud anterior, el archivo debe actualizarse y ejecutarse, pero rara vez se producen errores. ¿Alguien tiene idea de cómo solucionar este problema?
Y una cosa es que el usuario que ha iniciado sesión actualmente y www-data tienen permisos completos en el directorio kohana_project y su contenido.
Respuesta1
la posible razón sería que no has cambiado eldueñodel archivo, aunque haya cambiado elpermisos. :)
Entonces, primero debes obtener el nombre del propietario bajo el cualapacheEl servidor se está ejecutando y le asignaremos el mismo propietario /var/www/<file/folder>
.
Sigue estos pasos:
encontrar al dueño delhttpd. Ejecute este comando para obtener el propietario dehttpd:
sudo ps aux | grep httpd
La primera columna será la que diga el propietario.alguien. Si obtienes un número como1001o cualquier otro número en lugar dealguienluego ejecute este comando para obtener el nombre del propietario:
grep 1001 /etc/passwd
Nuevamente el primer campo será el propietario del proceso.
Ahora cambie el propietario del archivo/carpeta enwwwaalguien
sudo chown -R somebody /var/www/<path to the file/folder>
Reinicia tu servidor
sudo /etc/init.d/apache2 restart
Eso es todo. Espero que te ayude. :)