Cookie in più siti in cui i siti di rete hanno il proprio nome di dominio


14

Ho deciso di integrare diversi siti Web Wordpress autonomi in un'unica installazione multisito.

Ho creato una nuovissima installazione multisito con sottodirectory, creato un sito di rete MU con URL di sottodirectory, esportato il contenuto dal sito autonomo originale, quindi importato tale contenuto nel sito MU di sottodirectory.

Ho quindi rimosso il sito autonomo originale da cPanel e impostato il nome di dominio del sito MU sul nome di dominio originale.

Il sito si carica sul suo nome di dominio originale, ma quando provo ad accedere a domainname.com/wp-admin (utilizzando le credenziali utente di amministratore di rete del nuovissimo sito), ricevo un errore:

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

I cookie sono abilitati in Chrome.

Ho provato ad aggiungere quanto segue a wp-config.php:

define('COOKIE_DOMAIN', false);

ma il problema rimane.

Lo stesso problema si verifica se utilizzo WP Migrate DB Pro per inserire un sito Web autonomo in un sito della sottodirectory MU, quindi eliminare il sito autonomo da cPanel e quindi impostare l'URL del sito della sottodirectory MU come nome di dominio del sito autonomo originale. Il front-end del sito si carica bene, non riesco ad accedere all'amministratore.

Aiuto apprezzato.



Grazie a @bueltge, ho provato ad aggiungere define('COOKIE_DOMAIN', false);ma accedendo a un sotto-sito con il suo dominio non funziona, ma ritorna alla stessa schermata di accesso.
Steve

@Steve dovresti provare in modo specifico ciò che la risposta afferma e impostarlo su una stringa vuota, ad es define('COOKIE_DOMAIN', '');. Booleano falsepuò avere o meno lo stesso significato di una stringa vuota '', a seconda dell'applicazione.
bosco

Per MU, vuoi dire che stai utilizzando un plug-in per la mappatura del dominio? Grazie.
Greeso,

No @Greeso, utilizzando la funzionalità URL del sito integrata.
Steve

Risposte:


22

Prima svuota la cache del browser (inclusi i cookie) + cache del server dai plug-in della cache ecc.

Quindi imposta quanto segue nel tuo wp-config.phpfile:

define('ADMIN_COOKIE_PATH', '/');
define('COOKIE_DOMAIN', '');
define('COOKIEPATH', '');
define('SITECOOKIEPATH', ''); 

Inoltre, puoi controllare la risposta da QUI :

define('WP_ALLOW_MULTISITE', true);
define('MULTISITE', true);
define('SUBDOMAIN_INSTALL', false);
define('DOMAIN_CURRENT_SITE', 'your-domain.com');
define('PATH_CURRENT_SITE', '/');
define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);
define('SUNRISE', 'on');

Se il problema persiste, leggi questa risposta o contatta il supporto del tuo server, potrebbe esserci un problema di configurazione nel server.


Ciao Scott Un problema simile si è verificato su un altro sito MU. Ho aggiunto le costanti sopra a wp-config.php, ma su questo altro sito MU childsitedomain.com/wp-login.phpproduce l'errore The constant "COOKIE_DOMAIN" is defined (probably in wp-config.php). Please remove or comment out that define() line.Qualche idea su come affrontare questa situazione?
Steve

Se commento tale affermazione, ricevo l'errore dopo aver effettuato l'accesso al sito figlio:ERROR: Cookies are blocked or not supported by your browser. You must enable cookies to use WordPress.
Steve

Ho sollevato questo problema in una nuova domanda .
Steve

7

Utilizzando WordPress versione 4.9.4.

Stavo ricevendo l'errore del cookie e ho esaminato varie opzioni di aiuto e alla fine l'ho risolto utilizzando una miscela della correzione di Scott:

Nota: non ho effettuato alcuna cancellazione della cache dei cookie

a) Modifica della sunrise.phplinea in entrata wp-config.php(stavo usando la mappatura del dominio nativo, quindi ho rimosso le modifiche di installazione del plug-in MU che avevo apportato)

b) rettificato la mia wp-config.phpa

/* Multisite */

define('WP_DEBUG', false);

define( 'WP_ALLOW_MULTISITE', true ); 

define('MULTISITE', true);
define('SUBDOMAIN_INSTALL', true);
define('DOMAIN_CURRENT_SITE', 'www.mysite.com.au');
define('PATH_CURRENT_SITE', '/');
define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);
/* define( ‘COOKIE_DOMAIN’, $_SERVER[ ‘HTTP_HOST’ ] ); */

define('ADMIN_COOKIE_PATH', '/');
define('COOKIE_DOMAIN', '');
define('COOKIEPATH', '');
define('SITECOOKIEPATH', '');

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

3

Finalmente dopo ore, letteralmente, di risoluzione dei problemi sono stato in grado di risolverlo sull'istanza AWS Lightsail Bitnami Multisite Wordpress (WordPress 5.0.4) eseguendo quanto segue:

  1. Assicurarsi che il plug-in Mapping dominio WPMU sia disabilitato
  2. Modifica /opt/bitnami/apps/wordpress/htdocs/wp-config.php ...

    un. Aggiungi quanto segue:

     define('ADMIN_COOKIE_PATH', '/');
     define('COOKIE_DOMAIN', '');
     define('COOKIEPATH', '');
     define('SITECOOKIEPATH', '');
    
     /* That's all, stop editing! Happy blogging. */

    b. Commentare:

    // define('SUNRISE', 'on');

Dopo queste modifiche, l'accesso è andato a buon fine - nessun errore. Grazie per il contributo di tutti. Se non fosse per quello, mi griderei comunque la testa.

Ho trovato la risposta qui:

https://docs.bitnami.com/aws/apps/wordpress-multisite/configuration/configure-wordpress-multisite

Questa funzionalità di mappatura del dominio è inclusa in WordPress Multisite dalla v4.5 . Se stai utilizzando una versione precedente, avrai bisogno del plugin WordPress MU Domain Mapping.

Quindi sembra che il plug-in WPMU Domain Mapping sia inutilmente incluso nel pacchetto AWS Lightsail Bitnami Multisite.


Grazie per questo! Ha funzionato per me senza disabilitare il plug-in WPMU Domain Mapping. Inoltre non ho trovato SUNRISE da nessuna parte, quindi non ho dovuto commentarlo neanche.
Monarch Wadia,

2

Ho appena finito di risolvere un problema simile con il multisito del sottodominio.

Con:

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

Il sito stava ancora generando un errore di cookie e in alcuni casi di provare ciò che è stato suggerito sopra .........

define('ADMIN_COOKIE_PATH', '/');
define('COOKIE_DOMAIN', '');
define('COOKIEPATH', '');
define('SITECOOKIEPATH', ''); 

Ciò ha causato un errore diverso da eliminare definisce i riferimenti a "COOKIE_DOMAIN" durante la visita di siti secondari.

Finalmente sono stato in grado di accedere dopo essermi assicurato che entrambi fossero definiti appena sopra le informazioni sulla rete multisito

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

Prova ad assicurarti che siano entrambi definiti. Spero che questo possa essere d'aiuto.


Per chiarire sopra, sembra funzionare solo con define ('COOKIE_DOMAIN', '');
Ruben Apolinar il

1

Ho commentato define ('SUNRISE', 'on');

/ * define ('SUNRISE', 'on'); * /
define ('COOKIE_DOMAIN', $ _SERVER ['HTTP_HOST']);
define ('COOKIE_DOMAIN', '');

Quindi, non vedo il seguente messaggio di errore:

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

Anche il login ha iniziato a funzionare.


1

Quindi stavo riscontrando anche questo problema e mi sono imbattuto in molte soluzioni come quelle menzionate qui, ma non hanno funzionato.

Ciò che ha funzionato è stato semplicemente aggiungere quanto segue alla configurazione multisito in wp-config:

define('COOKIE_DOMAIN', false);

in modo che la sezione in wp-config sia così:

define( 'WP_ALLOW_MULTISITE', true );
define('MULTISITE', true);
define('SUBDOMAIN_INSTALL', true);
define('DOMAIN_CURRENT_SITE', 'your-site.com');
define('PATH_CURRENT_SITE', '/');
define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);
define('COOKIE_DOMAIN', false);

pubblicare qui in modo che altri possano trovarlo e passare meno tempo a sbattere la testa contro la scrivania di me.


0
define('MULTISITE', true);
define('SUBDOMAIN_INSTALL', true);
//define('DOMAIN_CURRENT_SITE', 'masterdigitalservices.com');
//define('PATH_CURRENT_SITE', '/');
//define('SITE_ID_CURRENT_SITE', 1);
//define('BLOG_ID_CURRENT_SITE', 1);

Ecco il mio nuovo wp-config. Sembra che sia stato codificato per essere un sito specifico, e non permetteva che altri domini funzionassero, solo sottodomini. Grandi risposte qui.


0

Stavo riscontrando anche questo problema e nulla di ciò che ho fatto è stato di aiuto. L'ho provato in Microsoft Edge e non ho riscontrato l'errore.

Quindi, almeno nel mio caso, è stato solo Google Chrome a causare il problema.


0

Stranamente ha funzionato per me (su più di un sito multiplo) impostare SUBDOMAIN_INSTALL su false. Ad essere sincero, non avevo avuto il tempo di indagare ulteriormente sul perché ...

define('SUBDOMAIN_INSTALL', false);


0

QUESTO RISOLTO PER ME Non avevo configurato completamente WordPress per il nuovo nome di dominio. Avevo creato il mio sito subdomain.domain.com poi volevo rimanere come newdomain.com oltre subdomain.domain.com Ciò ha richiesto

  1. Rete WordPress > admin> sito , cambia sito con un nuovo nome (cosa che avevo già fatto, il sito funzionava)
  2. Rete WordPress > admin> impostazioni> domini , aggiungi un nuovo nome all'ID del sito e seleziona Sì per il dominio principale (per indicare che questo nome è il nome principale). Per trovare l'ID del sito, puoi passare con il mouse sulla rete> admin> sito per indicare l'ID del sito su cui stai lavorando. Spero che questo aiuti chiunque ottenga che i cookie vengano bloccati o non supportati quando si tenta di accedere I migliori auguri SamTapsell

0

Sono stato in grado di risolvere il problema dopo aver aggiunto il seguito in wp-config.php. Riferimento

define( 'COOKIEPATH', preg_replace( '|https?://[^/]+|i', '', get_option( 'home' ) . '/' ) );
define( 'SITECOOKIEPATH', preg_replace( '|https?://[^/]+|i', '', get_option( 'siteurl' ) . '/' ) );
define( 'ADMIN_COOKIE_PATH', SITECOOKIEPATH . 'wp-admin' );
define( 'PLUGINS_COOKIE_PATH', preg_replace( '|https?://[^/]+|i', '', WP_PLUGIN_URL ) );

-1

Prova ad aggiungere quanto segue al tuo file wp-config.php

Rimuovere anche tutti i cookie dal browser prima del test

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

Quando ho apportato tale modifica, non sono riuscito ad accedere a nessun sito Web, incluso il sito Web principale.
Steve
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.