web-dev-qa-db-fra.com

Cookies dans plusieurs sites où les sites du réseau ont leur propre nom de domaine

J'ai décidé d'intégrer plusieurs sites Web Wordpress autonomes dans une seule installation multisite.

J'ai créé une nouvelle installation multisite avec des sous-répertoires, créé un site réseau avec une URL de sous-répertoire et exporté le contenu du site autonome d'origine, puis importé ce contenu dans le site de sous-répertoire MU.

J'ai ensuite supprimé le site autonome d'origine de cPanel et défini le nom de domaine du site MU sur le nom de domaine d'origine.

Le site se charge sur son nom de domaine d'origine, mais lorsque j'essaie de me connecter à domainname.com/wp-admin (à l'aide des informations d'identification de l'administrateur réseau du nouveau multisite), un message d'erreur s'affiche:

ERREUR: les cookies sont bloqués ou non pris en charge par votre navigateur. Vous devez activer les cookies pour utiliser WordPress.

Les cookies sont activés dans Chrome.

J'ai essayé d'ajouter ce qui suit à wp-config.php:

define('COOKIE_DOMAIN', false);

mais le problème demeure.

Le même problème se produit si j'utilise WP Migrate DB Pro, pour extraire un site Web autonome dans un site de sous-répertoire MU, puis supprimer le site autonome de cPanel, puis définir l'URL du site de sous-répertoire MU comme étant l'original. nom de domaine du site autonome. Le front-end du site se charge bien, je ne peux pas me connecter à l'administrateur.

Aide appréciée.

10
Steve

Premier cache du navigateur vide (y compris les cookies) + cache du serveur des plugins de cache, etc.

Définissez ensuite les éléments suivants dans votre fichier wp-config.php:

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

Aussi, vous pouvez vérifier la réponse de ICI :

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');

Si cela échoue toujours, alors lisez cette réponse ou contactez le support technique de votre serveur. Un problème de configuration peut survenir sur le serveur.

16
Scott

Utiliser WordPress version 4.9.4.

J'avais l'erreur de cookie et j'ai examiné diverses options d'aide avant de la résoudre en utilisant un mélange du correctif de Scott:

Remarque: je n'ai pas effacé la mémoire cache des cookies.

a) Modification de la ligne sunrise.php dans wp-config.php (j'utilisais le mappage de domaine natif; j'ai donc supprimé les modifications d'installation apportées par le plug-in MU).

b) Ajusté mon wp-config.php à

/* 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. */
5
user140609

J'ai commenté définir ('SUNRISE', 'sur');

/* define ('SUNRISE', 'on'); */
 définir ('COOKIE_DOMAIN', $ _SERVER ['HTTP_Host']); 
 définir ('COOKIE_DOMAIN', ''); 

Ensuite, je ne vois pas le message d'erreur ci-dessous:

 ERREUR: les cookies sont bloqués ou ne sont pas supportés par votre navigateur. Vous devez activer les cookies pour utiliser WordPress. 

La connexion a également commencé à fonctionner.

1
Joone Hur

Je viens juste de résoudre un problème similaire avec le multisite de sous-domaine.

Avec:

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

Le site jetait toujours une erreur de cookie et dans certains cas, essayait ce qui était suggéré ci-dessus .........

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

Cela entraînait une erreur différente lors de la suppression. Le référencement de "COOKIE_DOMAIN" lors de la visite des sous-sites était alors défini.

Enfin, j'ai pu me connecter après m'être assuré que les deux étaient définis juste au-dessus des informations du réseau multisite.

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

Essayez de vous assurer que ces deux éléments sont définis. J'espère que ça aide.

1
Ruben Apolinar

Donc, j'ai eu ce problème aussi et j'ai trouvé beaucoup de solutions comme celles mentionnées ici, mais elles n'ont pas fonctionné.

Ce qui a bien fonctionné a été simplement d’ajouter ce qui suit à la configuration multisite dans wp-config:

define('COOKIE_DOMAIN', false);

de sorte que la section dans wp-config ressemble à ceci:

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);

poster ici pour que les autres puissent le trouver et passer moins de temps à se cogner la tête contre leur bureau que moi.

1
ronaut

Enfin, après les heures de travail, j'ai pu résoudre ce problème sur l'instance AWS Lightsail Bitnami Multisite Wordpress (WordPress 5.0.4) en procédant comme suit:

  1. Assurez-vous que le plug-in WPMU Domain Mapping est désactivé
  2. Éditez /opt/bitnami/apps/wordpress/htdocs/wp-config.php ...

    une. Ajouter ce qui suit:

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

    b. Commenter:

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

Après ces modifications, la connexion a réussi - aucune erreur. Merci pour la contribution de tous. Si ce n'était pas pour cela, je me gratterais toujours la tête.

J'ai trouvé la réponse ici:

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

Cette fonctionnalité de mappage de domaine est incluse dans WordPress Multisite depuis la v4.5 . Si vous utilisez une version plus ancienne, vous aurez besoin du plugin WordPress MU Domain Mapping.

Il semble donc que le plug-in WPMU Domain Mapping soit inclus inutilement dans le package AWS Lightsail Bitnami Multisite.

1
George Drew

J'avais ce problème aussi, et rien de ce que j'ai fait n'a aidé. J'ai essayé dans Microsoft Edge et je n'ai pas eu l'erreur.

Donc, dans mon cas au moins, ce n’était que Google Chrome qui causait le problème.

0
snake

Étrangement, cela a fonctionné pour moi (sur plusieurs sites multiples) de définir SUBDOMAIN_INSTALL sur false. Pour être honnête, je n’avais pas eu le temps d’enquêter plus avant sur la raison pour laquelle….

define('SUBDOMAIN_INSTALL', false);

0

J'ai pu résoudre le problème après avoir ajouté ce qui suit dans wp-config.php. Référence

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 ) );
0
Baga
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);

Voici mon nouveau wp-config. On dirait qu'il a été codé en dur pour devenir un site spécifique et qu'il ne laissait pas les autres domaines fonctionner - uniquement des sous-domaines. Excellentes réponses ici.

0
Andy

CECI LE FIXE POUR MOI Je n'avais pas encore configuré WordPress pour le nouveau nom de domaine. J'avais créé mon site subdomain.domain.com Je voulais ensuite rester en tant que newdomain.com over subdomain.domain.com Ceci était obligatoire

  1. WordPress réseau> admin> site , changer le site en nouveau nom (ce que j'avais déjà fait, le site fonctionnait)
  2. WordPress réseau> admin> paramètres> domaines , ajoutez un nouveau nom à l'ID de site et cochez la case Oui pour le domaine principal (pour indiquer que ce nom est le nom principal). Pour trouver l'ID du site, vous pouvez survoler le réseau> admin> site qui indiquera l'ID du site sur lequel vous travaillez. J'espère que cela aidera tous ceux qui recevaient les cookies à bloquer ou à ne pas prendre en charge le message lors de la connexion. Meilleurs voeux SamTapsell
0
sam tapsell