Tiempo de lectura aprox: 7 minutos, 34 segundos
El error: «Lo siento, no tienes permisos para acceder a esta página» y cómo arreglarlo.
Pocas cosas hay tan frustrantes como intentar acceder al «backoffice» de tu WordPress y encontrarte con una página en blanco y el mensaje: «Lo siento, no tienes permisos para acceder a esta página».
Además de evitar que hagas los importantes cambios en tu sitio, como publicar nuevas entradas, también puede echar por la borda tu arduo trabajo, si no puedes acceder a él.
El error: «Lo siento, no tienes permisos para acceder a esta página» y cómo arreglarlo.
No te alarmes, te voy a contar las razones más comunes para que aparezca este error y, por supuesto, cómo puedes arreglarlo.
El contenido de este artículo será:
Pero antes de entrar en materia, vamos a ver qué genera el error «Lo siento, no tienes permisos para acceder a esta página».
Por suerte, este no es un error muy usual, pero si puedes encontrartelo de vez en cuando, sobre todo si «trasteas» con el servidor donde alojas tu WordPress.
La mayoría de las ocasiones, este error se genera por un problema de seguridad o de permisos. Estos problemas generalmente ocurren cuando cambias de servidor o mueves tu copia de WordPress, que pueden generar discrepancias entre la información que hay en la base de datos y el contenido del disco.
Si los datos almacenados para un tema, plugin o componente del núcleo de WordPress no se corresponden con la versión en la base de datos, las solicitudes no podrán procesarse correctamente y aparecerá el mensaje de error.
Si el nombre de usuario o la contraseña en tu archivo wp-config.php no coinciden con la base de datos, aparecerá el mensaje de error; finalmente otra posible causa es si tu sitio está usando una versión obsoleta de PHP (aunque esto es menos probable que ocurra «de golpe»).
Antes de intentar cualquiera de estas acciones, es muy recomendable que hagas una copia de seguridad de tu sitio de WordPress; por supuesto, como no puedes acceder, deberás hacerla con métodos del servidor. Esto asegurará que puedas restaurar fácilmente tu sitio si llegas a cometer un error al tratar de solucionar este problema.
Volver al estado previo al error
Como cualquier otro inconveniente informático, es útil recordar el último cambio que realizaste en el sitio. Después de todo, ese cambio podría haber causado el error.
Podría haber sido cualquier cosa, desde actualizar a una nueva versión de WordPress, hasta migrar tu sitio desde un entorno local, o hacer cambios importantes en PHP. También querrás considerar el último plugin o tema que instalaste (o actualizaste).
Si sabes con certeza cuál fue el último cambio que realizaste en tu sitio, una solución simple es revertirlo. Esto podría significar eliminar el tema o el plugin que crees que esta causando el problema o usar un plugin como WP Rollback (https://es.wordpress.org/plugins/wp-rollback/) para restaurar una versión anterior.
También puedes restaurar tu sitio de WordPress desde una copia de seguridad si tiene una que haya sido creada antes de que se produjera el error por primera vez.
En caso de que no estés seguro de qué cambio realizado podría haber causado el error “Lo siento, no tienes permisos para acceder a esta página”, te puede resultar útil tener acceso a una lista de causas probables.
Obtén una lista de errores con WP_DEBUG
Para obtener una lista de los errores que ha encontrado PHP en tu sitio, has de activar la herramienta WP_DEBUG.
Para hacer esto, accede mediante una herramienta de FTP o a través de tu panel de control (cPanel, Plesk, Webmin, …) y edita el archivo wp-config.php que está en el directorio raíz de tu WordPress.
Busca una línea de código que pone:
define( 'WP_DEBUG', false );
y cambia el valor a «true»
así, tanto si encuentras la línea como si la introduces manualmente, debe quedar:
define( 'WP_DEBUG', true );
Tras hacer esto, podrás ver en pantalla, si WordPress ha encontrado algún error y la información pertinente.
Mientras tengas activada la función de depuración, se generarán entradas en el registro de errores, que puedes ver en wp-contents/debug.log.
Revisa tu acceso y el registro de errores
Además de verificar los errores de PHP dentro de tus archivos, también querrás verificar el registro de errores de tu servidor. Este proceso puede ayudar a eliminar las conjeturas y reducir las posibles causas del error.
Naturalmente, el proceso para revisar tu registro de errores variará según tu proveedor de alojamiento.
Si no puedes detectar una posible causa de este error a través de WP_DEBUG o del registro de errores de tu host, puedes obtener más información utilizando un plugin de seguridad.
Por desgracia hay tantas posibilidades en la forma en que tu servicio de alojamiento puede configurar el registro de error, que no puedo decir exactamente dónde o en qué forma puedes verlo. Si no lo sabes o tienes dudas, contacta con tu administrador.
Obtener notificaciones de seguridad con un plugin.
Siempre existe la posibilidad de que el error que experimentas, sea la manifestación de un ataque de «hackers de sombrero negro». Ningún equipo informático es demasiado pequeño o insignificante para no ser blanco de un ataque.
Si tienes instalado un plugin de seguridad que envíe alertas por correo electrónico cuando se produce una actividad sospechosa (como Wordfence Security [https://es.wordpress.org/plugins/wordfence/]), deberías revisar tu correo y tu carpeta de correo no deseado, como primera medida.
Recuerda que hay una gran variedad de plugins de seguridad a tu disposición, que te avisarán si hay un ataque o intento de intrusión. Puedes escoger el que más te guste (https://es.wordpress.org/plugins/search/seguridad/)
Un plugin de seguridad como WP Security Audit Log (https://es.wordpress.org/plugins/wp-security-audit-log/) te permite hacer un seguimiento de los cambios en el núcleo y las configuraciones de WordPress, las actualizaciones del perfil de usuario, las modificaciones de la base de datos y mucho más. Como tal, puede servir como una herramienta útil para identificar la causa raíz de cualquier error
Verificar los permisos.
Una causa bastante probable para que aparezca este mensaje de error, es una desconfiguración de los permisos de archivos.
Existen varios factores que hay que evaluar antes de decir que los permisos de tus archivos son correctos. Aquí te cuento formulas sencillas para corregir este problema.
Una opción que está al alcance de todos, es la de usar tu cuenta de FTP para acceder a tus archivos.
Otra opción, la que yo recomiendo, es acceder a través de una cuenta de SSH. Supongo que tu servidor es Linux, así que, vamos allá.
Accede mediante tu usuario y contraseña al servidor:
ssh mi_usuario@https://miservidor.com
A continuación debes cambiar los permiso de los directorios y de los archivos. Podemos hacer esto con dos líneas en la consola, mediante un comando find. Así:
cd /htdocs/ $ sudo find /tu_camino_html/wordpress/ -type d -exec chmod 755 {} \; $ sudo find /tu_camino_html/wordpress/ -type f -exec chmod 644 {} \;
Obviamente, si el servidor no es tuyo o no tienes la contraseña de su, deberás usar la opción de acceso con FTP.
Abre tu cliente de Protocolo de transferencia de archivos (FTP) e ingresa los detalles de tu servidor en los campos relevantes. Luego, ve a la carpeta de html (normalmente public_html). Dentro de ese directorio, tendrás que resaltar los subdirectorios llamados wp-admin, wp-content y wp-includes. Luego, selecciona Permisos de archivos y pon los directorios con permisos: 755
Recuerda marcar el recuadro Repetir en subdirectorios y Aplicar solo a directorios.
La siguiente operación es seleccionar en public_html todos los archivos dentro del directorio. Asegúrate de excluir los tres directorios que ya has modificado. Deberás hacer clic derecho sobre los archivos y seleccionar los Permisos de archivo una vez más.
En la ventana de Cambiar atributos, debes poner el valor numérico 644 y, marcar las casillas de Repetir en subdirectorios y Aplicar solo a archivos.
Esto debería resolver el problema, en caso de que fuese causado por problemas de permisos. Recuerda que si tienes instalado algún plugin de seguridad, posiblemente te avise de que debes hacer cambio en los permisos. Hazle caso.
Desactivar Temas y Plugins.
Como ya mencioné, un tema o un plugin que has instalado recientemente, puede causar el error. Por tanto, una buena estrategia es desactivar todos los plugins y tu tema activo. En caso de que no puedas acceder al panel de administración, tendrás que desactivar tus temas y plugins manualmente a través de FTP.
Comprueba si el error ha desaparecido. Si está todo bien, reactiva tu tema y luego tus plugin, uno a uno, probando entre cada activación para comprobar que no aparece de nuevo el error.
Si aparece de nuevo el error «Lo siento, no tienes permisos para acceder a esta página», desactiva nuevamente el último plugin, encontraste el culpable, borralo inmediatamente.
Sin embargo, si este proceso no funciona, mantén abierto tu cliente de FTP.
Regenera tu archivo .htaccess.
Si ninguna de las soluciones anteriores te ha funcionado, podría tratarse de un problema con el archivo .htaccess.
Como he dicho en repetidas ocasiones, este es un archivo crítico, así que ten mucho cuidado con cualquier cambio que realices.
El primer paso y fundamental, es mantener el archivo que tienes ahora mismo. Para eso, accede con tu cliente FTP al directorio htm de tu instalación public_html.
Localiza el archivo .htaccess, haz clic derecho sobre él, selecciona Cambiar nombre y cambia el nombre a .htaccess_backup.
A continuación, descarga ese archivo renombrado para poder tenerlo seguro y poder editarlo cómodamente.
Abre el archivo en tu editor de texto preferido (como TextEdit o Notepad o Geany). Borra el contenido del archivo y guardalo como .htaccess.
En el archivo en blanco, pon el código básico para WordPress:
# BEGIN WordPress RewriteEngine On RewriteBase / RewriteRule ^index.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] # END WordPress
Guarda el archivo y subelo al servidor con tu cliente FTP.
Si el archivo .htaccess ha sido el causante del problema, ya no tendrás el error. Recuerda que luego deberás verificar el estado de tu plugin de seguridad.
Comprueba la versión de PHP.
Esta es quizá uno de las causas menos comunes de error, ya que no es tan frecuente que sea necesario actualizar la versión del lenguaje PHP.
Sin embargo, una versión obsoleta de este lenguaje, puede causar el error «Lo siento, no tienes permisos para acceder a esta página». Aunque lo más importante es que una versión obsoleta del lenguaje, puede presentar serios problemas de seguridad y estabilidad en tu WordPress.
Así que vale la pena actualizar la versión de PHP que usas. Recuerda que antes de acometer esta acción, debes asegurarte de contar con una copia de seguridad de tu sito (por si acaso).
Yo te aconsejo que instales una copia en local, y pruebes la nueva versión con menos riesgos. 🙂
Esta labor es muy delicada e importante y es probable que no puedas realizarla tu mismo y debas pedir al administrador del alojamiento que la realice.
En cualquier caso, en una buena idea mantener actualizado el PHP según las recomendaciones de la versión de WordPress.
Verifica las tablas de tu base de datos.
Otra razón para recibir el error «Lo siento, no tienes permisos para acceder a esta página», es una discrepancia en la información sobre tu base de datos.
Esta situación suele ocurrir cuando se realiza el desarrollo de la página en un servidor local (servidor dedicado o LAMP) y se migra la versión final al servidor online.
Es posible que el prefijo de las tablas en la base de datos, sea distinto en los dos servidores o que el prefijo asignado en la sentencia $table_prefix = '';
del archivo wp-config.php no se corresponda con lo que existe en el servidor SQL
Accede a tu servidor SQL mediante el método que tengas asignado (por ejemplo phpmyadmin). Dirígete a la base de datos que tengas creada para tu WordPress y fíjate en el nombre de las tablas. Deberían empezar todos con lo que se establece en $table_prefix = '';
; si no es así, cambia el contenido de esta declaración.
O sea, que si la declaración es: $table_prefix = 'xzy';
, todas las tablas de tu base de datos deben tener un nombre que comienza con 'xyz_'
Restaura tu sitio WordPress.
Como dije al principio, antes de tomar cualquier decisión, antes de cualquier actuación, hay que hacer una copia de seguridad.
Como vemos en esta lista, hay muchos factores que pueden acabar con la aparición del error «Lo siento, no tienes permisos para acceder a esta página» y es posible que alguno de los pasos tomados anteriormente haya solucionado el problema.
Pero también es posible que el problema persista, con lo cual una última posibilidad es la de restaurar una copia de seguridad de antes de encontrar el error, ya que la única alternativa, sería la instalación de una copia fresca de WordPress, con lo que habrás perdido todas tus páginas y entradas.
Sea como sea, espero que no te encuentres nunca con este escurridizo error.
Conclusión
Como usuario de WordPress, es crucial entender las posibles causas de los errores comunes y saber qué soluciones probar. Hemos visto aquí, cómo atajar un error que puede presentarse, como todos, por sorpresa y, esta, no es una sorpresa ¡agradable!
¡Gracias por leernos!
¡Tus comentarios y preguntas nos ayudan a mejorar, por favor comenta!