Cómo configurar correctamente los permisos de archivo en WordPress

Publicado: 2022-09-13

Si alguna vez ha administrado un sitio de WordPress, es posible que se haya encontrado con un problema en el que no se pudieron instalar complementos o temas, no se pudieron cargar imágenes en la biblioteca de medios o los archivos que esperaba que estuvieran en el sitio simplemente no estaban no se muestra correctamente.

En el centro de todos estos problemas está el concepto de permisos de archivo, pero si nunca ha administrado un servidor web, es posible que no esté seguro de qué son los permisos de archivo, cómo funcionan o cómo se configuran incorrectamente en primer lugar.

En este artículo, veremos todo lo que necesita saber sobre los permisos de archivo y cómo funcionan en WordPress.

Examinaremos algunas de las instancias específicas en las que es más probable que vea errores de permisos de archivo e investigaremos cómo puede diagnosticar estos errores y corregirlos.

¿Qué son los permisos de archivo?

Desde el primer sistema informático multiusuario, se han necesitado permisos de archivo para decidir qué usuarios tienen acceso a qué partes del sistema de archivos.

Por ejemplo, cada usuario suele tener una carpeta de "inicio", a la que puede acceder, pero a la que no pueden acceder otros usuarios del sistema.

Lo que permite esto es un conjunto de permisos de archivo que se dividen en 3 categorías:

  1. Qué permisos tiene el propietario.
  2. Qué permisos tiene el grupo de archivos.
  3. Que permisos tiene cada uno.

Estos permisos generalmente se expresan en una de dos formas: como un número o como una cadena de caracteres. Los permisos de archivo que representan cada uno de estos números y caracteres son los mismos en ambos casos.

Un ejemplo de permisos de archivo, tomado de WordPress.org

La forma en que se establecen estos permisos determina quién puede acceder a un archivo determinado en un momento dado.

¿Cómo se utilizan los permisos de archivo en WordPress?

En la mayoría de los casos, el servidor que ejecuta un sitio de WordPress se ejecuta como un usuario particular.

Al igual que cualquier usuario en el sistema, los archivos propiedad del usuario del servidor web tienden a ser accesibles para ese usuario y, por lo tanto, accesibles para la instalación de WordPress que el usuario está ejecutando.

Esto es importante porque para que WordPress ejecute actualizaciones, permita a los usuarios cargar medios, instalar complementos y temas, y casi todo lo que WordPress hace para ejecutarse, necesita permisos para acceder a los distintos directorios dentro de la instalación de WordPress.

Si el usuario del sistema en el que se ejecuta WordPress no tiene acceso para escribir en el directorio de cargas, por ejemplo, cualquier persona que intente cargar medios dentro del área de administración de WordPress verá un mensaje de error y no podrá agregar nada a la Biblioteca de medios. .

Por otro lado, configurar permisos demasiado abiertos significa que cualquiera podría modificar archivos dentro de su instalación de WordPress, lo que también es un riesgo para la seguridad.

Por eso es muy importante configurar correctamente los permisos de los archivos. Si está utilizando un host administrado, es probable que ya estén configurados para usted.

Cuidado con el 777

Si se encuentra con un error de permisos de archivo y comienza a buscar soluciones en línea, muchos tutoriales recomendarán configurar los permisos de archivo de uno o más directorios dentro de su instalación de WordPress en "permisos 777".

Este es el conjunto de permisos más abierto posible y significa que cualquiera puede leer o escribir cualquier cosa dentro de ese directorio.

El pensamiento detrás de establecer los permisos de un directorio problemático en 777 es que una vez que haga esto, si su problema se resuelve, entonces los permisos de archivo fueron el problema y puede comenzar a buscar más profundamente qué directorios pueden tener configurados permisos incorrectos.

Si bien esto está bien para la depuración temporal, dejar directorios con este nivel de permisos a largo plazo es un riesgo de seguridad. Si deja cualquiera de sus directorios configurados con estos permisos completamente abiertos, cualquier persona que esté familiarizada con el funcionamiento de WordPress y la estructura de directorios podría tener acceso a sus archivos.

Establecer sus permisos en 777 y dejarlos allí es básicamente como quedarse fuera de su apartamento, romper la cerradura de la puerta y dejarlo así.

Si bien resuelve su problema en ese momento, también lo deja abierto a otras vulnerabilidades de seguridad. Dejar estos permisos de archivo abiertos para algo más que una breve depuración significa que su sitio de WordPress, y su servidor web en general, es más vulnerable a los complementos pirateados y explotados, así como a los ataques automáticos que se ejecutan en amplias franjas de la web.

Errores comunes debido a permisos de archivos

Ahora que sabemos un poco sobre cómo se usan los permisos de archivo y cómo funcionan específicamente dentro de WordPress, echemos un vistazo a algunos de los errores que puede ver que se deben a que los permisos de archivo se configuraron incorrectamente.

Los temas, complementos o el núcleo de WordPress no se instalan/actualizan

A veces, cuando está ejecutando actualizaciones o instalando nuevos temas o complementos, se encontrará con un error en el que no se pudo instalar el complemento o no se pudo completar la actualización.

En muchos casos, se trata de un problema de permisos de archivo y, específicamente, de una discrepancia entre el usuario del servidor web que ejecuta WordPress y el usuario del servidor web que tiene acceso y propiedad del directorio wp-content . Esto sucede a menudo cuando actualiza archivos en el directorio wp-content a través de FTP.

En este caso, la propiedad de los directorios que cargó a través de FTP se establece en el usuario de FTP, mientras que el usuario del servidor web que ejecuta WordPress es diferente. Cuando WordPress intenta instalar un nuevo tema o complemento, el servidor web rechaza este intento porque WordPress no tiene propiedad sobre la carpeta.

Eso significa que WordPress no tiene los permisos correctos para insertar o cambiar archivos dentro de la carpeta wp-content, razón por la cual falla la instalación o actualización.

Las cargas de medios fallan

Las cargas de medios que fallan constantemente pero que no activan los mensajes de error que indican que son demasiado grandes o tienen un formato incorrecto pueden significar que también tiene un error de permisos de archivo.

Si el usuario del servidor web que está vinculado a WordPress no tiene permiso para acceder al directorio wp-content o al directorio de uploads específicamente, los archivos multimedia cargados no podrán transferirse al directorio correcto y la carga se informará como ha fallado.

Los archivos multimedia existen en el servidor, pero son 404 cuando se accede a través del navegador

Especialmente después de restaurar un sitio de WordPress desde una copia de seguridad o migrarlo entre hosts, es posible que encuentre que, aunque los archivos multimedia se cargan correctamente en su sitio y están presentes en su directorio wp-content/uploads , todavía arrojan un error 404 cuando están intentando ser accedidos en el navegador.

Cuando esto sucede, generalmente significa que el usuario del sistema operativo que ejecuta el servidor web no tiene permiso para acceder a las imágenes en el servidor y, por lo tanto, no puede enviarlas al navegador del visitante.

Al igual que los problemas y las soluciones anteriores, debe verificar cada directorio, comenzando con wp-content pasando por las uploads y cada uno de los directorios mensuales, así como las imágenes en sí, y asegúrese de que el usuario del servidor web tenga permisos de lectura en todas estas carpetas. y archivos para que los medios se puedan mostrar correctamente a los visitantes en su navegador.

Cómo corregir errores comunes de permisos de archivos

La forma más fácil de corregir los errores comunes de permisos de archivos es asegurarse de que los permisos de los archivos estén configurados de la manera que WordPress espera que estén.

Primero, verifique que el mismo usuario web que ejecuta WordPress tenga propiedad sobre el directorio raíz donde se ejecuta WordPress (este es el directorio donde se encuentra su archivo wp-config.php).

Después de eso, asegúrese de que todos los archivos de WordPress en este directorio, así como el directorio wp-content y todos los directorios debajo, también sean propiedad del mismo usuario.

Si está utilizando un servidor web que usa cPanel, puede cambiar estos permisos desde dentro de cPanel. Sin embargo, si tiene acceso SSH a su servidor y está ejecutando un servidor basado en Linux (como la mayoría de los servidores web), es posible que deba seguir un método ligeramente diferente.

Otros posibles errores de permisos de archivos

Fuera del núcleo de WordPress y la funcionalidad básica de temas y complementos, hay un par de otros lugares en los que también puede encontrarse con errores relacionados con los permisos de archivos.

Es decir, algunos complementos usan el sistema de archivos de su sitio de WordPress para hacer su trabajo y si no pueden hacer el trabajo que necesitan dentro de la estructura de archivos, es posible que aparezcan algunos errores extraños.

A menudo, estos son complementos de copia de seguridad (que a veces almacenan las copias de seguridad dentro del directorio wp-content ) y complementos de almacenamiento en caché (que a veces generan y almacenan cachés estáticos dentro del directorio wp-content ).

Si comienza a ver errores con cualquiera de estos tipos de complementos, la solución es la misma que se identificó anteriormente. Debe asegurarse de que el usuario del servidor web que ejecuta WordPress sea el propietario y tenga permisos para su directorio wp-content para que los archivos que sus complementos instalados necesitan almacenar puedan colocarse allí.

¿Cuáles son los permisos de archivo correctos de WordPress?

Aunque cada instalación puede ser ligeramente diferente, existen pautas generales sobre qué permisos de archivo deben ser para varios tipos de archivos y carpetas en WordPress.

En general, según las pautas de WordPress, “lo mejor es bloquear los permisos de archivo tanto como sea posible y aflojar esas restricciones en las ocasiones en que necesite permitir el acceso de escritura, o crear carpetas específicas con menos restricciones con el fin de haciendo cosas como subir archivos”.

Con eso en mente, hay algunas áreas del sitio que necesitan varias configuraciones de permisos. La mayoría de los archivos dentro de la raíz de WordPress y más profundos deben ser propiedad de su cuenta de usuario y se pueden escribir desde esa cuenta, sin embargo, hay algunos otros lugares en los que el servidor web debe poder escribir para que WordPress pueda realizar cambios en estos archivos.

Dentro wp-content , el servidor web debe poder escribir en los directorios de themes , plugins y uploads , especialmente si desea ejecutar actualizaciones automáticas o usar el editor de temas desde WordPress.

Si no desea utilizar estas funciones, puede hacer que las cosas sean un poco más seguras haciendo que el servidor web no pueda escribir en estos directorios. Esto permitirá que su sitio siga funcionando con normalidad sin abrir la posibilidad de que se realicen cambios maliciosos en cualquiera de estos archivos.

Terminando

A pesar de no ser algo con lo que la mayoría de los propietarios de sitios de WordPress tengan que lidiar, especialmente desde el auge del alojamiento administrado, los permisos de archivos aún pueden producir algunos errores difíciles de depurar.

Sin embargo, si conoce los signos y los tipos comunes de errores que tienen una causa subyacente de que los permisos de archivo se configuran incorrectamente, puede acelerar el proceso de volver a encarrilar su sitio.

Al saber un poco sobre los permisos de archivos y cómo funciona el sistema operativo debajo de su sitio de WordPress, podrá resolver cualquier posible error de permisos más rápidamente y ayudar a otros a hacer lo mismo.

Destacados