Setarea COOKIE_DOMAIN și confuzia legată de aceasta
Fac un upgrade la site-ul meu care rulează WordPress. Folosesc subdomeniul cdn
pentru CDN și acesta trebuie să fie fără cookie-uri.
În prezent, site-ul meu este o multi-rețea de multisite-uri (ambele sunt instalări în subdirectorare), cu subdomeniul www
care găzduiește proiectul meu principal de muzică, și subdomeniul photo
care găzduiește proiectul meu de fotografie.
Plugin-ul pe care îl folosesc pentru acest tip de multi-rețea este: https://github.com/stuttter/wp-multi-network
Am nevoie să folosesc Single Sign-on. Și asta mă duce la o confuzie în timp ce setez COOKIE_DOMAIN
în wp-config.php
. Pot seta așa cum spune documentația plugin-ului:
define( 'COOKIE_DOMAIN', 'mydomain.com' );
dar știu că acest lucru ar face ca cookie-urile să fie servite și de pe cdn.mydomain.com
.
Cum pot seta COOKIE_DOMAIN
astfel încât să servească cookie-uri doar de pe cele două subdomenii www
și photo
?
Sau trebuie să folosesc un alt nume de domeniu doar pentru CDN?

Am avut dificultăți în utilizarea domeniilor multisite ale WordPress nativ 4.x.
În ciuda găsirii unor referințe care afirmau că aceste linii corectau eroarea, niciuna dintre aceste setări nu a funcționat:
//define('COOKIE_DOMAIN', false);
//define( ‘COOKIE_DOMAIN’, $_SERVER[ ‘HTTP_HOST’ ] );
În final, am adăugat următoarele linii de cod în loc, și a funcționat minunat...
define('ADMIN_COOKIE_PATH', '/');
define('COOKIE_DOMAIN', '');
define('COOKIEPATH', '');
define('SITECOOKIEPATH', '');
Nu sunt sigur dacă acest lucru va fi bun pentru tine?
- Postez acest lucru în principal pentru viitorii cercetători care întâmpină probleme.

dacă ți-a stricat site-ul, pur și simplu elimină codul și reconectează-te setând valorile originale. Acest lucru doar setează valorile cookie-urilor, nu afectează baza de date etc. Notă: site-ul meu rulează în directorul rădăcină (domain.com/), deci dacă ești într-un subdirector (domain.com/wordpress), atunci trebuie să setezi cookiepath ca /wordpress/ -

Hey Wayne, asta am făcut primul lucru. Totuși, nici eliminarea acelor definiții, nici setarea lor la alte valori nu a reușit să facă site-urile să funcționeze din nou. Am avut succes limitat folosind un sunrise.php... dar nu am reușit niciodată să mă conectez. Sunt pe Google Cloud VM. Am ajuns să restaurăm un snapshot al discului și să renunț la speranța că maparea nativă a domeniilor WPMU poate funcționa. M-am întors la utilizarea plugin-urilor.

Deoarece cdn.mydomain.com
nu face parte din rețeaua ta WordPress, nu va fi afectat de setările tale.
Constanta COOKIE_DOMAIN
ar trebui folosită doar dacă dorești să servești cookie-uri de la un singur domeniu pentru toate site-urile din rețea. Dacă omiți constanta sau o setezi la o valoare goală, cookie-urile vor aparține domeniului de la care sunt solicitate. Aceasta este configurația pe care trebuie să o folosești pentru mediile multisite/rețea, în special atunci când vine vorba de domenii diferite.
