Hay un error muy feo que a veces puede surgir en un sitio WordPress por el cual, al acceder a la administración de tu web, te devuelve a portada y no hay manera de acceder. Tu sitio se ve pero no puedes gestionarlo, ni añadir nuevo contenido ni nada, no puedes entrar en la administración de WordPress.
Un chivato de esto suele ser una URL de este tipo:
http://misitio.es/wp-login.php?redirect_to=http%3A%2F%2Fmisitio.es%2Fwp-admin%2F&reauth=1
Puede haber varios culpables, a saber:
- Una reciente migración de dominio/servidor.
- Tras una activación de WordPress multisitio.
- Tras una desactivación de WordPress multisitio.
- Una actualización de WordPress fallida.
- Plugins.
- Tema.
- Cookies que no caducan.
- Caché persistente.
- Una corrupción de tablas de la base de datos por alguno de los motivos anteriores u otros.
Y si ya es difícil dar con el problema no creas que encontrar la solución es más fácil. No obstante hay bastantes maneras de tratar de solucionarlo así que vamos a verlos y ve probando hasta dar con el tuyo. No hay que hacer todo, solo ir probando uno a uno hasta encontrar cual soluciona el problema ¿vale?…
- Antes de empezar añade la línea
define( 'WP_DEBUG', true );
al archivo wp-config.php para ver los errores que se generen y te puedan dar pistas.
- Vacía la cache de tu navegador, sal y vuelve a iniciarlo. Intenta entrar ahora.
- Usa otro navegador que no suelas utilizar habitualmente e intenta entrar. Si lo consigues vacía la cache de tu navegador habitual.
- Abre una sesión de incógnito desde tu navegador, o usa el de Tor, para evitar problemas con las cookies.
- Vacía las cookies de tu navegador y vuelve a intentar entrar.
- Reinstala WordPress manualmente por FTP o cPanel, sustituyendo todos los archivos y carpetas de la instalación previa de WordPress por la nueva, excepto la carpeta /wp-content/. Intenta entrar ahora.
- Fuerza la desconexión de tu sitio tecleando la URL (sustituye tusitio.es por tu dominio claro), vacía la cache del navegador, ciérralo, ábrelo de nuevo e intenta entrar de nuevo.
- Renombra la carpeta /plugins/ por FTP o cPanel a, por ejemplo /plugins-off/ e intenta entrar. Esta acción desactiva todos los plugins. Intenta entrar. Si lo consigues vuelve a renombrar la carpeta a su nombre original y activa los plugins uno a uno hasta dar con el culpable.
- Renombra la carpeta del tema activo desde FTP o cPanel para forzar a que WordPress active el tema por defecto (twentyloquesea). Por supuesto deberías tener algún twentyalgo instalado, sino lo subes manualmente antes. Intenta entrar ahora.
- Desactiva la cache del servidor si tuvieses alguna activa, vacía la cache del navegador y vuelve a intentar entrar.
- Borra el archivo .htaccess e intenta entrar en la administración. Si lo consigues cambia las URLs del sitio y WordPress en Ajustes -> Generales de www a sin www o viceversa, otro posible culpable del error. Luego ve a Ajustes -> Enlaces permanentes y guarda cambios sin tocar ningún ajuste para que se vuelva a crear el archivo .htaccess.
- Una alternativa al truco anterior es definir manualmente las URLs a utilizar, forzarlas, añadiendo las siguientes líneas a tu archivo wp-config.php:
define('WP_HOME','http://tusitio.es'); define('WP_SITEURL','http://tusitio.es');
o …
define('WP_HOME','http://www.tusitio.es'); define('WP_SITEURL','http://www.tusitio.es');
- Si recientemente desactivaste Multisito ve a tu archivo wp-config.php y añade de nuevo la siguiente linea para activarlo:
define( 'WP_ALLOW_MULTISITE', true );
Intenta entrar ahora. Si lo consigues instala y activa este plugin y luego pon todos sus ajustes a los valores por defecto para borrar posibles malas configuraciones previas.
- Revisa los permisos de las carpetas wp-admin, wp-includes y wp-content para comprobar que sean 755 y si no fuera así cámbialos. Intenta entrar.
- Desactiva la CDN, si tuvieses algún servicio de este tipo activo y prueba a entrar.
- Abre tu archivo wp-config.php y cambia las claves únicas de autentificación (las salt cookies) obteniendo unas nuevas desde https://api.wordpress.org/secret-key/1.1/salt/. Guarda los cambios y vuelve a entrar.
- Podría también ser un problema similar al de redirección infinita de WordPress Multisitio así que añade lo siguiente al archivo wp-config.php, guarda los cambios y vuelve a intentar entrar.
define('ADMIN_COOKIE_PATH', '/'); define('COOKIE_DOMAIN', ''); define('COOKIEPATH', ''); define('SITECOOKIEPATH', '');
- Revisa tu plugin de utilidades y el archivo functions.php del tema activo para comprobar que no haya activa alguna redirección personalizada activa. Si la encuentras borra o comenta las líneas que la activan.
- Revisa el archivo .htaccess y comprueba si algún plugin de seguridad ha añadido alguna línea que genere una redirección tras acceder a la administración y la borras o comentas. Ante la duda renombra o borra el archivo .htaccess (recuerda guardar una copia de seguridad antes) e inténtalo de nuevo.
- Si recientemente has activado la versión HTTPS de tu sitio revisa cada cambio realizado para conseguirlo y reviértelo a los valores por defecto (líneas de código en .htaccess o wp-config.php, cambio de URLs de sitio y WordPress, etc.)
- Accede a tu base de datos mediante PHPMyAdmin desde el panel de tu hosting y localiza la tabla wp_options (o loquesea_options) y revisa que las URLs de sitio y WordPress tienen los valores correctos.
- En PHPMyAdmin revisa que los tamaños de las tablas sean correctos. Ante la duda selecciona las tablas principales de WordPress optimízalas y repáralas.
- Desde PHPMyAdmin localiza la tabla wp_usermeta (o loquesea_usermeta si, felizmente, no usas el prefijo wp_). Ahora busca las filas con el título de session_token y borra todos los valores que contengan.
- … Y si no lo consigues con ninguno de los trucos anteriores no te queda otra; restaura una copia de seguridad de tu sitio, base de datos incluida, del día anterior a que empezó el fallo de redirección que nos trae por el camino de la amargura.
Es un error puñetero que, afortunadamente, no es muy habitual pero cuando surge es bastante fastidiado hasta que das con lo que lo está provocando.
A mi me ha pasado varias veces en sitios de clientes y (casi) siempre lo he solucionado con alguno de los trucos aquí expuestos. Y sino siempre queda recurrir a las benditas copias de seguridad.
Si sabes algún otro modo de solucionarlo que se me haya pasado ya tardas en contarlo en los comentarios, más de uno te lo agradecerá.
¿Te gustó este artículo? ¡Ni te imaginas lo que te estás perdiendo en YouTube!
Yo creo que pasa mucho por la caché del navegador, eso de recordarte las contraseñas tan cómodo, juega una mala pasada. Me ha pasado y lo he resuelto entrando la navegación de incógnito, por ejemplo.
A mi pasa muy a menudo y siempre es por el tema de la CACHE
22: Y prueba también a pausar tu CDN durante estas pruebas, no sea que esté haciendo cosas extrañas.
Mil y mil gracias. Acaban literalmente de salvarme de un cliente dificil.
¡Muchísimas gracias! Andaba como loco buscando una solución… He tenido que llegar al punto 12 para arreglarlo y eso que nunca he tenido multisitio…
Buen día instale un plugin
All 404 Redirect to Homepage, y me sale esto wp-login.php?redirect_to=, y no puedo entrar al cpanel de wordpress
Me puede apoyar, muchas gracias
Desactiva el plugin
Gracias, a mi me sirvió borrando .htaccess entré y guardé enlaces permanentes sin modificar nada.
Gracias Fernando! Siempre apareces (en Google) cuando más lo necesito. Un abrazo
Vaya! A mi me ha sucedido lo mismo y al mismo tiempo en dos webs alojadas en el mismo hosting!
El único cambio que hice fue el de cambiar la versión de PHP a la 7.4. El caso es que estuvo funcionando perfectamente unos días y hoy ha dejado de funcionar.
Me ha tocado volver a una versión anterior de PHP. ¿Será algún plugin que no soporte esa versión?
Eres un crack, volver a una versión anterior de PHP funciona perfectamente!
A mi me pasa con la versión del Jetpack. La unica manera de solucionarlo es borrandolo. Y ahí me permite ingresar al Administrador, el tema es que lo necesito para automatizar mis posteos en Facebook.
A mi me empezo a fallar el login despues de cambiar el sitio a www.
Al final lo solucione leyendo este articulo y agregando estas lineas al wp-config.php:
define(‘WP_HOME’,’http://www.tusitio.es’);
define(‘WP_SITEURL’,’http://www.tusitio.es’);
Muchas gracias 🙂
Bien hecho, con eso fuerzas el login en la URL correcta
Genial Excelente como explicaste, es solo probar todo lo que recomiendas. del paso ( 1. al 12.)
Cuando ya estaba por darme por vencido **definir manualmente las URLs** y nada.
Al final por error elimine el wp-config.php , claro que antes hice copia de los archivos a modificar
y cuando restaure el wp-config.php inicial todo volvio a funcionar y no tube que eliminar ningun
plugin y ningun tema.
Gracias.
Fernando Tellado *****
Hola muchisimas gracias por tu informacion. pero mas bien quisiera hacerte una consulta. «hay varias busquedas extrañas en mi sitios desde lugares donde no he visitado jajajajaja, a los mas simpsons». por ejemplo esta
» consulta
?redirect_to=https%3A%2F%2Fferiadelaspulgas.org%2Fwp-admin%2F&reauth=1″
Esta consulta es de rusia y tengo otra igual desde ukrania. existe algun hack respecto a eso o es solo una redireccion. muchas gracias por su enorme aporte