Permisos de archivos/directorios incorrectos para el servidor de páginas en GNU/Linux

Introducción

El problema mas común que impide que se pueda acceder correctamente a un sitio o aplicación web que se está instalando o desarrollando es que los archivos y directorios no cuenten con los permisos de acceso apropiados para que el servidor de páginas (Apache por ejemplo) pueda accederlos correctamente.  En estos casos se obtiene un mensaje de error similar al  mostrado a continuación.

failed to open stream: Permission denied in /ruta/al/proyecto/index.php on line xx

La solución

En términos generales, los directorios deben contar con permisos 755 (drwxr-xr-x) y los archivos -como .php- 644 (-rw-r–r–).  Esta modificación puede realizarse de manera recursiva aprovechando la flexibilidad del comando find de la siguiente manera.

$ find /ruta/al/proyecto -type d -exec chmod 755 {} ;
$ find /ruta/al/proyecto -type f -exec chmod 644 {} ;

Inclusive es posible establecer filtros a los nombres de los recursos actualizados para mayor precisión en el cambio.

$ find /ruta/al/proyecto -type f -name '*.php' -exec chmod 644 {} ;

Leave a Reply

Your email address will not be published. Required fields are marked *