Impossibile accedere: “ERRORE: i cookie sono bloccati o non supportati dal tuo browser. È necessario abilitare i cookie per utilizzare WordPress ".


14

Dopo uno spostamento del server, non riesco ad accedere al mio sito. Viene visualizzato il messaggio "ERRORE: i cookie sono bloccati o non supportati dal browser. È necessario abilitare i cookie per utilizzare WordPress". errore quando provo a inviare il modulo di accesso.

Sono sicuro che il mio browser supporti i cookie e che non siano bloccati.

L'ho studiato a fondo e ho provato tutti i suggerimenti che ho trovato:

  • rinominato la directory dei plugin
  • rinominato la directory del tema del sito
  • cercato nel database le istanze dell'URL precedente e sostituito quelle con il nuovo URL
  • aggiornato WordPress all'ultima versione (4.0)
  • definito WP_HOME e WP_SITEURL in wp-config.php
  • imposta ADMIN_COOKIE_PATH, COOKIE_DOMAIN, COOKIEPATH e SITECOOKIEPATH in wp-config.php:

    define('ADMIN_COOKIE_PATH', '/');
    define('COOKIE_DOMAIN', '');
    define('COOKIEPATH', '');
    define('SITECOOKIEPATH', '');
  • ho provato questo trucco per wp-login.php: https://wordpress.org/support/topic/cookies-are-blocked-or-not-supported-by-your-browser-1#post-5026171

Posso accedere al sito sulla mia installazione locale e posso accedere al sito sul nostro server di sviluppo. Qualche idea su cosa potrebbe causare questo?


1
Guarda l'origine HTML della pagina di accesso. C'è qualcosa prima della linea DOCTYPE iniziale? Anche una riga vuota? In tal caso, hai qualche pezzo di codice che crea output prima che vengano create le intestazioni, nel qual caso ciò impedisce che imposti i cookie.
Otto,

2
Ciò è dovuto al fatto che Wordpress applica un controllo $ secure_cookie su un canale crittografato per gli accessi da amministratore. Riconfigurare il server Web per applicare SSL / TLS. KR.

Se stai utilizzando WordPress MU, l'aggiunta del dominio all'elenco Domini in Impostazioni potrebbe risolvere il problema.
Mahdi Taghizadeh,

2
Questo è ciò che ha funzionato per me: ho cambiato http in https (aggiunto 's') e voilà. Nessun problema con i cookie.
Prigioniero 13

@MahdiTaghizadeh - Puoi spiegare cosa intendi per favore in modo più dettagliato?
Greeso,

Risposte:


26

Aggiungi sotto la riga al tuo wp-config.php prima di / * Questo è tutto, smetti di modificare! ... * /

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

/* That's all, stop editing! Happy blogging. */

1
Questa soluzione ha funzionato anche per me su un'installazione multisito. Sono stato in grado di accedere al sito principale ma non a quello secondario.
Be.St.

@ Be.St., Provadefine('COOKIE_DOMAIN', '');
Steve

1
Questo non ha funzionato immediatamente per me, ma ha fatto un duro aggiornamento (ctrl + f5 in chrome)
Dave

4

Era vernice.

Il nostro host web aveva Varnish impostato in modo specifico per Drupal e stava filtrando i cookie che WordPress utilizza per gestire gli accessi.


1
Nel mio caso è stato AWS CloudFront a bloccare i cookie.
Mantas,

Ho visto questo con il sito non sicurohttp: // ma per me tutto funziona quando si utilizza https: //
CrandellWS

1

Sono stato cercato su Google e ho provato tutti i modi per sbarazzarmi di questo problema con i cookie. Alla fine ho trovato due soluzioni, che potrebbero aiutarti.

Soluzione 1:

yoursite / wp-login.php

Commenta le seguenti righe 770-773

Codice

if ( isset($_POST['testcookie']) && empty($_COOKIE[TEST_COOKIE]) )
    $user = new WP_Error('test_cookie', __("<strong>ERROR</strong>: Cookies are blocked or not supported by your browser. You must <a href='http://www.google.com/cookies.html'>enable cookies</a> to use WordPress."));
else
    $user = wp_signon('', $secure_cookie);

Potrebbe funzionare per alcuni siti Web e alcuni siti potrebbero mostrare una pagina vuota. Inoltre, questo non è raccomandato, poiché questo file può essere sovrascritto dopo l'aggiornamento di WordPress, quindi prova con la seconda soluzione.

Soluzione 2:

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

Inserisci il seguente codice.

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

Anche l'aggiornamento del tuo tema potrebbe perdere queste modifiche, quindi inserisci questo codice in un'altra funzione.php, che si trova nella cartella del tema figlio nel tuo tema attivo corrente. Spero che questo ti possa aiutare.


2
Queste sono davvero soluzioni. Più come aggirare, non è l'ideale per usarlo in modo permanente ...
Jake,

-1 per "Soluzione" 1 perché la modifica del core non è MAI l'azione corretta. 2 funzionerà ma non identifica il problema.
Jeremy,

1

Di recente ho riscontrato anche questo problema, ma è stato scoperto che sebbene il nome di dominio fosse puntato verso il sito Web, il multisito di wordpress non aveva un record nel database per mappare il nome di dominio sul blog corretto, quindi quando wordpress stava cercando di impostare i cookie, stava impostando i cookie per il sottodominio anziché per il dominio mappato.


Questo ha funzionato per me. Sto usando wordpress.org/plugins/wordpress-mu-domain-mapping per la mappatura del dominio e non appena ho aggiunto il record della mappatura, ho smesso di ottenere l'errore "ERRORE: i cookie sono bloccati o non supportati dal tuo browser".
lee_mcmullen,

-1

Ho implementato la soluzione fornita da wpdevramki e ho notato che potrebbe emergere il seguente problema:

"Avviso: costante COOKIE_DOMAIN già definita in /wp-config.php sulla riga 102"

Per risolvere questo problema, si prega di commentare il seguente codice in wp-Includes / default-contants.php

if ( !defined('COOKIE_DOMAIN') )
    define('COOKIE_DOMAIN', false);

3
NON MODIFICARE IL CODICE CORE!
Jeremy,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.