No puedo iniciar sesión: "ERROR: Las cookies están bloqueadas o no son compatibles con tu navegador. Debes habilitar las cookies para usar WordPress."

22 oct 2014, 23:11:56
Vistas: 122K
Votos: 31

Después de mover el servidor, no puedo iniciar sesión en mi sitio. Recibo el error "ERROR: Las cookies están bloqueadas o no son compatibles con tu navegador. Debes habilitar las cookies para usar WordPress." cuando intento enviar el formulario de inicio de sesión.

Estoy seguro de que mi navegador soporta cookies y que no están bloqueadas.

He investigado esto exhaustivamente y he probado todas las sugerencias que he encontrado:

  • renombré el directorio de plugins
  • renombré el directorio del tema del sitio
  • busqué en la base de datos las instancias de la URL anterior y las reemplacé con la nueva URL
  • actualicé WordPress a la última versión (4.0)
  • definí WP_HOME y WP_SITEURL en wp-config.php
  • establecí ADMIN_COOKIE_PATH, COOKIE_DOMAIN, COOKIEPATH, y SITECOOKIEPATH en wp-config.php:

    define('ADMIN_COOKIE_PATH', '/');
    define('COOKIE_DOMAIN', '');
    define('COOKIEPATH', '');
    define('SITECOOKIEPATH', '');
    
  • probé este hack en wp-login.php: https://wordpress.org/support/topic/cookies-are-blocked-or-not-supported-by-your-browser-1#post-5026171

Puedo iniciar sesión en el sitio en mi instalación local, y puedo iniciar sesión en el sitio en nuestro servidor de desarrollo. ¿Alguna idea de qué podría estar causando esto?

7
Comentarios

Mira el código fuente HTML de la página de inicio de sesión. ¿Hay algo antes de la línea inicial DOCTYPE? ¿Incluso una línea en blanco? Si es así, entonces tienes algún fragmento de código generando salida antes de que se creen los encabezados, lo que impide que se puedan configurar las cookies.

Otto Otto
22 oct 2014 23:48:18

Esto se debe a que WordPress aplica un control $secure_cookie sobre un canal encriptado para los inicios de sesión de administrador. Reconfigura tu servidor web para aplicar SSL/TLS. Saludos.

User User
23 oct 2016 15:30:20

Si estás usando WordPress MU, agregar el dominio a la lista de Dominios en Ajustes puede solucionar el problema.

Mahdi Taghizadeh Mahdi Taghizadeh
12 dic 2016 09:34:35

Esto es lo que funcionó para mí: Cambié http a https (añadí la 's') y listo. No más problemas con las cookies.

Prisoner 13 Prisoner 13
20 sept 2017 00:25:47

@MahdiTaghizadeh - ¿Podrías explicar por favor lo que quieres decir con más detalle?

Greeso Greeso
4 abr 2019 09:53:45

Otro error que puedes cometer es al configurar AWS CloudFront, podrías pasar por alto los ajustes para permitir que reenvíe las cookies. Cuando está desactivado, no podrás iniciar sesión.

Kevin Kevin
12 sept 2019 12:06:31

Me faltaban las rutas de las cookies, gracias por la pregunta detallada :)

brasofilo brasofilo
13 nov 2021 19:14:42
Mostrar los 2 comentarios restantes
Todas las respuestas a la pregunta 8
6
45

Agrega la siguiente línea a tu archivo wp-config.php antes de /* ¡Eso es todo, deja de editar!... */

 define('COOKIE_DOMAIN', $_SERVER['HTTP_HOST'] );

/* ¡Eso es todo, deja de editar! Feliz blogging. */
28 nov 2016 17:00:52
Comentarios

Esta solución también funcionó para mí en una instalación multisitio. Podía iniciar sesión en el sitio principal pero no en el secundario.

Be.St. Be.St.
23 feb 2018 14:49:22

@Be.St., prueba con define('COOKIE_DOMAIN', '');

Steve Steve
18 abr 2018 05:14:46

Esto no funcionó de inmediato para mí, pero sí después de un refresco forzado (ctrl + f5 en chrome)

Dave Dave
10 feb 2019 00:39:11

de acuerdo con @Dave, limpié manualmente las cookies y luego funcionó

Neekey Neekey
19 feb 2020 04:57:45

En caso de que alguien busque documentación oficial que confirme esto, pueden ver este mismo consejo al final de https://wordpress.org/support/article/wordpress-multisite-domain-mapping/.

DuckMaestro DuckMaestro
21 mar 2020 01:47:06

Cuando uses un plugin de caché, asegúrate de limpiar el OPcache.

tak3shi tak3shi
6 abr 2021 10:58:04
Mostrar los 1 comentarios restantes
2

Era Varnish.

Nuestro proveedor de alojamiento web tenía Varnish configurado de manera específica para Drupal, y estaba filtrando las cookies que WordPress utiliza para manejar los inicios de sesión.

24 oct 2014 18:34:34
Comentarios

En mi caso fue AWS CloudFront el que bloqueó las cookies.

Mantas Mantas
8 sept 2016 09:37:39

Vi esto con el sitio no seguro http:// pero para mí todo funciona al usar https://

CrandellWS CrandellWS
27 sept 2019 20:15:40
1

También tuve este problema recientemente, resultó que aunque el nombre de dominio estaba apuntando hacia el sitio web, el multisitio de WordPress no tenía un registro en la base de datos para mapear el nombre de dominio al blog correcto, por lo que cuando WordPress intentaba establecer las cookies, las estaba configurando para el subdominio en lugar del dominio mapeado.

6 jul 2018 11:32:35
Comentarios

Esto funcionó para mí. Estoy usando https://wordpress.org/plugins/wordpress-mu-domain-mapping/ para el mapeo de dominios y tan pronto como añadí el registro de mapeo, dejé de recibir el error "ERROR: Las cookies están bloqueadas o no son compatibles con tu navegador".

lee_mcmullen lee_mcmullen
13 feb 2019 18:24:24
0

Este problema también puede ser causado por un site_url que no coincide exactamente con la URL.

En mi caso, mi site_url y home eran //127.0.0.1, lo que uso para tener la flexibilidad de usar http o https, así que hice:

// Identificar el protocolo relevante para la solicitud actual
$protocolo = (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off' || $_SERVER['SERVER_PORT'] == 443) ? "https" : "http";

// Configurar SITEURL y HOME usando un protocolo dinámico.
define('WP_SITEURL', $protocolo . '://' . $_SERVER['HTTP_HOST']);
define('WP_HOME', $protocolo . '://' . $_SERVER['HTTP_HOST']);
19 nov 2020 13:05:44
0

Podrían existir los siguientes problemas en tu sitio.

  1. Error de Codificación
  2. Espacios innecesarios en el Código
  3. Plugin de Caché & Seguridad

Consulta más aquí: https://www.scratchcode.io/cookies-are-blocked-or-not-supported-by-your-browser/

2 ene 2021 15:40:42
0

Esto sucede principalmente cuando inicias sesión en el backend por primera vez.

Si estás seguro de que el usuario y la contraseña que ingresaste son válidos, puedes intentar simplemente recargar la página y serás conectado normalmente.

Y eso es todo. Después de eso, tu navegador guardará la cookie necesaria.

17 feb 2021 20:56:54
2

He buscado en Google y probado todas las formas para deshacerme de este problema de cookies. Finalmente encontré dos soluciones que podrían ayudarte.

Solución 1:

yoursite/wp-login.php

Comenta las siguientes líneas 770-773

Código

if ( isset($_POST['testcookie']) && empty($_COOKIE[TEST_COOKIE]) )
    $user = new WP_Error('test_cookie', __("<strong>ERROR</strong>: Las cookies están bloqueadas o no son compatibles con tu navegador. Debes <a href='http://www.google.com/cookies.html'>habilitar las cookies</a> para usar WordPress."));
else
    $user = wp_signon('', $secure_cookie);

Esto podría funcionar para algunos sitios web, mientras que otros podrían mostrar una página en blanco. Además, no se recomienda esta solución, ya que este archivo podría sobrescribirse después de una actualización de WordPress, así que prueba con la segunda solución.

Solución 2:

yoursite/wp-content/themes/yourthemeFolder/functions.php

Coloca el siguiente código.

setcookie(TEST_COOKIE, 'WP Cookie check', 0, COOKIEPATH, COOKIE_DOMAIN);
if ( SITECOOKIEPATH != COOKIEPATH )
    setcookie(TEST_COOKIE, 'WP Cookie check', 0, SITECOOKIEPATH, COOKIE_DOMAIN);

La actualización de tu tema también podría eliminar estos cambios, así que por favor coloca este código en otro functions.php que esté en la carpeta de tu child-theme dentro del tema activo actual. Espero que esto te ayude.

3 jun 2015 11:12:33
Comentarios

Estas son realmente soluciones. Más bien soluciones alternativas, no es ideal usarlas de forma permanente...

Jake Jake
21 sept 2016 21:52:59

-1 para la "Solución" 1 porque modificar el núcleo NUNCA es la acción correcta. La 2 funcionará pero no identifica el problema.

Jeremy Jeremy
25 abr 2018 18:24:23
2
-4

Implementé la solución proporcionada por wpdevramki y noté que podría surgir el siguiente problema:

"Notice: Constant COOKIE_DOMAIN ya definida en /wp-config.php en la línea 102"

Para resolver esto, por favor comenta el siguiente código en el archivo wp-includes/default-contants.php

if ( !defined('COOKIE_DOMAIN') )
    define('COOKIE_DOMAIN', false);
8 abr 2018 16:07:11
Comentarios

¡NO MODIFIQUES EL CÓDIGO PRINCIPAL!

Jeremy Jeremy
25 abr 2018 18:27:35

Nunca modifiques el código principal.

Drmzindec Drmzindec
15 jul 2020 18:06:14