Existen algunas causas potenciales para los problemas de permisos de archivos y carpetas en el alojamiento de Linux.
1. Permisos de archivo y carpeta
Los permisos de verificación de carpetas están configurados en 0755 y los permisos de archivos están configurados en 0644. Tenga en cuenta que los permisos de archivos y carpetas se pueden restablecer a estas configuraciones seguras estándar en todo el sitio utilizando la versión gratuita o de pago de Akeeba Admin Tools.
2. Parámetros PHP
Compruebe que el parámetro upload_max_filesize en la pestaña Información de PHP en la Información del sistema es suficiente. A menudo puede anular la configuración predeterminada en un entorno de alojamiento compartido a través de la configuración de PHP en cPanel o un php.ini
archivo personalizado .
3. Rutas incorrectas en configuration.php
Es posible que tenga rutas incorrectas especificadas para las carpetas tmp y logs. Estos se especifican en la Configuración del sistema o se pueden actualizar directamente en el archivo configuration.php si se siente cómodo editando directamente los archivos del sistema. Si no está seguro de cuál debería ser la ruta, cree y cargue un archivo whereami.php
(o similar) en la carpeta raíz de su sitio web con el siguiente contenido:
<?php
print 'Current folder is ' . dirname(__FILE__);
?>
Examine para [mywebsite].com/whereami.php
ver la ruta a la carpeta raíz.
Una vez que tenga la ruta correcta, recuerde eliminar el whereami.php
archivo.
4. Controlador de archivos PHP inadecuado
Su alojamiento web puede configurarse con el controlador de archivos PHP predeterminado, pero idealmente debería usar suPHP o FastCGI o similar para que Joomla pueda cargar y ejecutar archivos usando permisos de archivo seguros.
Puede ver en qué controlador PHP se está utilizando System -> System Information -> WebServer to PHP Interface
.
Hay un buen artículo sobre los méritos relativos de los controladores de archivos PHP en: http://boomshadow.net/tech/php-handlers
En un entorno de alojamiento compartido, generalmente no tiene acceso para cambiar qué controlador de archivos PHP está habilitado, pero su empresa de alojamiento web puede cambiarlo por usted.
A veces, como solución alternativa, los permisos de archivos y carpetas se cambian a 0777, pero esto coloca a su sitio web en un estado vulnerable y, por lo general, se deben evitar los permisos de archivos 0777.
Si su empresa de alojamiento web no puede habilitar suPHP o FastCGI, la única otra opción podría ser encontrar una nueva empresa de alojamiento web.
5. Espacio en disco
Verifique que no haya excedido su cuota de espacio en disco.
LISTA DE VERIFICACIÓN DE SOLUCIÓN DE PROBLEMAS
¿Cuáles son las mejores prácticas recomendadas para configurar permisos y propiedades en Joomla en sistemas Linux?
Ver 1 y 4.
No poder transferir archivos al servidor utilizando programas como WinSCP.
Ver 1, 2, posiblemente 4 y 5.
No poder instalar extensiones, complementos, etc. de Joomla
Ver 1, 2, 3, 4 y 5.
Archivos y carpetas inseguros debido a permisos peligrosos y configuraciones de propiedad.
Ver 1 y 4.
Verifique los niveles de permiso, debe ser 644 y 755 para archivos y carpetas respectivamente.
Muchas veces los niveles de permisos están bien, incluso cuando se enfrentan algunos problemas. Significa que tendrá que verificar la propiedad y el grupo de los archivos y carpetas específicos . Normalmente, el grupo y la propiedad se pueden cambiar a www-data para apache (utilizado en servidores web basados en ubuntu).
No dude en consultar este interesante documento de Joomla basado en la verificación de los permisos del archivo.
fuente
Una solución fácil para mí es a menudo dejar que PHP se ejecute en modo (Rápido) CGI y establecer la propiedad del directorio de Joomla para el usuario FTP. Por lo tanto, podrá cargar y sobrescribir archivos a través de FTP y Joomla también podrá escribir archivos.
Una forma de hacer esto en un entorno de alojamiento compartido (si está permitido) es agregar algo como esto a su archivo .htaccess:
Consulte también una descripción general sobre los diferentes modos .
fuente
Los permisos deben ser 644 y 755 según lo explica Shyam.
En Joomla puedes evitar todos los problemas que mencionaste, con los siguientes métodos.
No poder transferir archivos al servidor utilizando programas como WinSCP.
configuration.php
tiene este permiso que no permite por defecto (por seguridad).No poder instalar extensiones, complementos, etc. de Joomla
Esto sucederá debido a un
temp/log
mal permiso de la carpeta. (Se requirió 755)O otra razón es que el
temp/log
camino está mal enconfiguration.php
Archivos y carpetas inseguros debido a permisos peligrosos y configuraciones de propiedad.
Espero que sea de ayuda.
fuente
Los permisos deben ser 644 y 755 según lo explica Shyam.
Los problemas a los que se enfrenta probablemente estén relacionados con la forma en que está configurado su servidor. La mayoría de las veces esto sucede en hosts compartidos donde Apache se ejecuta con un usuario diferente que su cuenta FTP. Como generalmente carga Joomla usando FTP, Apache no es el propietario del archivo y, por lo tanto, no tiene los permisos necesarios para cambiarlo.
Hay un modo FTP dentro de Joomla que le permite evitar este problema. Puede habilitarlo en la configuración global de Joomla. A continuación, accederá a todos los archivos utilizando el usuario FTP en lugar del usuario Apache normal.
Sin embargo, una mejor manera es pedirle a su host que solucione el problema. Pueden configurar PHP (Apache) para que se ejecute bajo un usuario especial, que en tal caso debería ser su usuario FTP. Entonces todo funcionará bien.
fuente
Sí, los permisos deben ser 644 y 755 según lo explica Shyam , pero los otros carteles se olvidan de mencionar que esto es si el archivo es propiedad de su servidor web, y el grupo es el grupo al que pertenece.
Por ejemplo, en FileZilla verá permisos como este:
Los permisos drwxr-xr-x son 755 (simplemente ignore el dr principal para que sea wxr-xr-x). Los permisos de lectura valen 4, los permisos de escritura valen 2 y los permisos de ejecución valen 1 ... así que todos suman 7, y eso es lo que tiene el propietario de este archivo. El grupo tiene permisos de lectura y ejecución pero no de escritura, por lo que tienen 5, y todos también tienen 5 .. haciendo los permisos 755.
754 serían propietarios que hayan leído, escrito, ejecutado. Grupo que tiene lectura y ejecución, y todos solo tienen permisos de lectura.
En el ejemplo anterior, puede ver que el propietario del archivo es www-data (que es el grupo de servidores web predeterminado para muchos servidores Apache) y el Grupo es el grupo myGroup, que es el Grupo (administradores) al que pertenezco.
El primer número son los permisos de los propietarios, el segundo son los permisos de los grupos y el tercer número son los permisos de todos. Obviamente, debe tener cuidado de otorgarle al servidor web los permisos que necesita ... y asegurarse de que los archivos que deben bloquearse no puedan ser escritos o ejecutados por cualquiera (el tercer número). A continuación se muestra lo que significan los números:
Suponiendo que el servidor web posee los archivos, su administrador está en el grupo y, por supuesto, todos son el tercer número.
644: los archivos con permisos establecidos en 644 son legibles por todos y solo el propietario del archivo / carpeta puede escribirlos.
755: los archivos con permisos establecidos en 755 son legibles y ejecutables por todos, pero solo el propietario del archivo / carpeta puede escribirlos.
777: los archivos con permisos establecidos en 777 son legibles, escribibles y ejecutables por todos. No use este conjunto de permisos, por razones de seguridad, en su servidor web a menos que sea absolutamente necesario, y solo temporalmente. Es un desastre esperando que ocurra, especialmente si un directorio tiene esos permisos ... significa que cualquiera puede cargar archivos y ejecutarlos.
Aquí están los comandos de Linux para configurar Joomla! permisos recomendados desde la línea de comando. Permisos recomendados de archivos Joomla
NOTA: muchas personas le mostrarán estos comandos sin la ruta, pero SIEMPRE prefiero usar la ruta completa, porque si olvida cambiar los directorios a la raíz Joomla! directorio de instalación y ejecutarlos sin la ruta, acaba de cambiar los permisos para cada archivo y directorio en ese directorio superior, y creó un gran desastre.
Después de ejecutar estos comandos, deberá corregir los permisos para cualquier directorio que necesite más permisos ... por ejemplo ... usuarios que cargan imágenes, etc.
SI SOLO UTILIZA JOOMLA! interfaz, y no tiene acceso de administrador o FTP al servidor, entonces USE LA PROPIEDAD y PERMISOS ANTERIORES.
DETÉNGASE AQUÍ SI USTED ES UN NOVICE ... lo siguiente es solo para personas que realmente entienden lo que hacen los permisos y la propiedad.
Sin embargo, encuentro que tener la propiedad y los permisos de esa manera es muy desagradable porque me gusta usar FileZilla y una línea de comando de sesión de Terminal la mayor parte del tiempo, y subo muchos archivos manualmente. Pero no puedo sobrescribir ningún archivo porque no los tengo y no tengo permisos para escribir. Podría hacer que FileZilla inicie sesión con la cuenta del servidor web, PERO ... Quiero que FileZilla inicie sesión con mi cuenta, para poder explorar otros directorios también, no solo los archivos a los que tiene acceso el servidor web ... SO ... Cambio la propiedad y los permisos a esto:
Me convierto en el propietario y pongo el servidor web en el Grupo ... y cambio los permisos de los directorios a 775, y de los archivos a 664. Me hace la vida mucho más fácil ... pero no lo recomiendo para todo el mundo.
Si lo haces a mi manera, estos son los comandos:
fuente
Las otras respuestas proporcionan una buena explicación de lo que se debe hacer, solo quiero agregar un script para corregir los permisos si ya cargó un componente y no puede acceder a los archivos con ftp.
En este caso, subiría este archivo
fix.php
al servidor FTP y lo abriría en el navegador:http://example.com/fix.php
Este script establece todos los permisos del archivo en 666 y todos los directorios en 777. World writeable no es el mejor conjunto de permisos para un host compartido, pero podrá acceder a sus archivos nuevamente y luego puede configurarlo con los valores correctos con FTP.
fuente
Tarde a la fiesta. Vine aquí buscando en otros lugares una guía definitiva sobre qué carpetas deben ser grabables para Joomla.
Lo siento amigos para ser el heraldo de las malas noticias.
El consejo de utilizar los permisos 755 para todos los directorios y 644 para todas las carpetas es, como mínimo, irresponsable .
Hacer que el propietario de todas sus carpetas y archivos se pueda escribir está bien siempre que el propietario no sea el servidor web (apache et al).
Sé que esta es una práctica recomendada común, pero puedo asegurarle que no es una buena práctica. La última pieza de software que desea dar la capacidad de escribir en carpetas es el servidor web en sí. Es el servidor web que utilizan los piratas informáticos para aprovechar ese exploit que aún no ha sido parcheado (o incluso encontrado).
¿Crees que .htaccess salvará a tu Kevin? Olvídalo porque permitiste el acceso de escritura al servidor web, ¡nuestros queridos amigos hackers pueden crear sus propios archivos .htaccess dándoles los permisos que quieran! como Oh, no sé, Umm hace que los archivos .jpg sean ejecutables por el servidor. Y pensaste que proteger contra la ejecución de .php iba a cubrir tu A.
Pero asegúrese de que solo las carpetas que requieren acceso de escritura realmente lo tengan. 755 y 644 para las siguientes carpetas.
Y asegúrese de desactivar los archivos .htaccess con AllowOveride none para todas las carpetas grabables (como las anteriores)
Para aquellos de ustedes en el alojamiento compartido, buena suerte, ya que este es un elemento de configuración que no pueden controlar.
No piense que hacer que el archivo .htaccess sea de solo lectura ayudará. Si nuestros amigos piratas informáticos pueden crear una nueva carpeta (ellos pueden), entonces pueden crear su propio .htaccess.
Para aquellos de ustedes que ejecutan hosting compartido para todo lo que es sagrado, obtengan una pista sobre la seguridad.
Si no comprende la seguridad, salga del negocio de alojamiento que está haciendo difícil para el resto de nosotros.
Ahora, de vuelta a mi búsqueda de la guía definitiva sobre las carpetas que necesitan acceso de escritura ...
fuente