คุกกี้ในหลายไซต์ที่ไซต์เครือข่ายมีชื่อโดเมนของตนเอง


14

ฉันตัดสินใจที่จะรวมเว็บไซต์ Wordpress แบบสแตนด์อโลนหลายแห่งไว้ในการติดตั้งเว็บไซต์หลายไซต์

ฉันสร้างการติดตั้งหลายไซต์ใหม่พร้อมไดเรกทอรีย่อยสร้างไซต์เครือข่าย MU ด้วย URL ไดเรกทอรีย่อยและส่งออกเนื้อหาจากไซต์สแตนด์อโลนดั้งเดิมจากนั้นนำเข้าเนื้อหานั้นไปยังไซต์ย่อยไดเรกทอรีย่อย

จากนั้นฉันจะลบเว็บไซต์แบบสแตนด์อโลนดั้งเดิมออกจาก cPanel และตั้งชื่อโดเมนของเว็บไซต์ MU เป็นชื่อโดเมนดั้งเดิม

ไซต์โหลดชื่อโดเมนดั้งเดิม แต่เมื่อฉันพยายามลงชื่อเข้าใช้ domainname.com/wp-admin (ใช้ข้อมูลประจำตัวผู้ใช้สำหรับผู้ดูแลระบบเครือข่ายของ multisite ใหม่) ฉันได้รับข้อผิดพลาด:

ข้อผิดพลาด: เบราว์เซอร์ของคุณถูกบล็อกหรือไม่รองรับ คุณต้องเปิดใช้งานคุกกี้เพื่อใช้ WordPress

คุกกี้จะเปิดใช้งานใน Chrome

ฉันพยายามเพิ่มสิ่งต่อไปนี้ในwp-config.php:

define('COOKIE_DOMAIN', false);

แต่ปัญหายังคงอยู่

ปัญหาเดียวกันนี้เกิดขึ้นหากฉันใช้ WP Migrate DB Pro เพื่อดึงเว็บไซต์แบบสแตนด์อโลนลงในไซต์ย่อย MU จากนั้นลบเว็บไซต์แบบสแตนด์อโลนออกจาก cPanel จากนั้นตั้งค่า URL ของไซต์ไดเรกทอรีย่อย MU เป็นชื่อโดเมนของเว็บไซต์แบบสแตนด์อโลนดั้งเดิม ส่วนหน้าของเว็บไซต์โหลดได้ดีฉันไม่สามารถลงชื่อเข้าใช้ผู้ดูแลระบบได้

ช่วยชื่นชม



ขอบคุณ @bueltge ลองเพิ่มdefine('COOKIE_DOMAIN', false);แต่การเข้าสู่เว็บไซต์ย่อยที่มีโดเมนของตัวเองไม่ทำงาน - มันกลับไปที่หน้าจอเข้าสู่ระบบเดียวกัน
Steve

@ Steve define('COOKIE_DOMAIN', '');คุณควรพยายามเฉพาะสิ่งที่เป็นคำตอบที่รัฐและตั้งค่าให้เป็นสตริงว่างคือ บูลีนfalseอาจมีหรือไม่มีความหมายเหมือนกับสตริงว่างเปล่า''ขึ้นอยู่กับแอปพลิเคชัน
bosco

โดย MU คุณหมายถึงคุณใช้ปลั๊กอินการแมปโดเมนหรือไม่ ขอบคุณ
Greeso

ไม่ @Greeso โดยใช้ฟังก์ชัน URL ของเว็บไซต์
Steve

คำตอบ:


22

ล้างแคชเบราว์เซอร์ครั้งแรก (รวมถึงคุกกี้) + แคชเซิร์ฟเวอร์จากปลั๊กอินแคช ฯลฯ

จากนั้นตั้งค่าต่อไปนี้ในwp-config.phpไฟล์ของคุณ:

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

นอกจากนี้คุณสามารถเช็คเอาต์คำตอบจากที่นี่ :

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

หากยังคงล้มเหลวให้อ่านคำตอบนี้หรือติดต่อฝ่ายสนับสนุนเซิร์ฟเวอร์ของคุณอาจมีปัญหาการกำหนดค่าในเซิร์ฟเวอร์


สวัสดีสกอตต์ ปัญหาที่คล้ายกันเกิดขึ้นในไซต์ MU อื่น ฉันได้เพิ่มค่าคงที่ด้านบนไว้wp-config.phpแล้ว แต่บนไซต์ MU อื่นนี้childsitedomain.com/wp-login.phpสร้างข้อผิดพลาดThe constant "COOKIE_DOMAIN" is defined (probably in wp-config.php). Please remove or comment out that define() line.ความคิดเห็นใด ๆ เกี่ยวกับวิธีแก้ไขปัญหานี้
Steve

ถ้าฉันคอมเม้นท์ข้อความนั้นฉันได้รับข้อผิดพลาดหลังจากลงชื่อเข้าใช้ไซต์ลูก:ERROR: Cookies are blocked or not supported by your browser. You must enable cookies to use WordPress.
Steve

ฉันตั้งคำถามนี้ขึ้นใหม่
Steve

7

ใช้ WordPress เวอร์ชั่น 4.9.4

ฉันได้รับข้อผิดพลาดของคุกกี้และดูตัวเลือกความช่วยเหลือที่หลากหลายและในที่สุดก็แก้ไขได้โดยใช้การผสมผสานของการแก้ไขของ Scott:

หมายเหตุ: ฉันไม่ได้ทำการล้างแคชคุกกี้

ก) การแก้ไขsunrise.phpบรรทัดในwp-config.php(ฉันใช้การจับคู่โดเมนเนทีฟเพื่อลบการเปลี่ยนแปลงการติดตั้งปลั๊กอิน MU ที่ฉันทำ)

b) ปรับของฉัน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. */

3

ในที่สุดหลังจากผ่านไปหลายชั่วโมงการแก้ไขปัญหาฉันสามารถแก้ไขปัญหานี้ได้บนอินสแตนซ์ AWS Lightsail Bitnami Multisite Wordpress (WordPress 5.0.4) โดยการทำสิ่งต่อไปนี้:

  1. ตรวจสอบให้แน่ใจว่าปลั๊กอิน WPMU Domain Mapping ถูกปิดใช้งาน
  2. แก้ไข /opt/bitnami/apps/wordpress/htdocs/wp-config.php ...

    เพิ่มรายการต่อไปนี้:

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

    ข แสดงความคิดเห็น:

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

หลังจากการเปลี่ยนแปลงเหล่านี้เข้าสู่ระบบได้สำเร็จ - ไม่มีข้อผิดพลาด ขอบคุณสำหรับความคิดเห็นของทุกคน หากไม่ใช่เพื่อสิ่งนั้นฉันก็ยังคงเกาหัวอยู่

ฉันหาคำตอบได้ที่นี่:

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

นี้ฟังก์ชั่นการทำแผนที่โดเมนจะรวมอยู่ใน WordPress Multisite ตั้งแต่ v4.5 หากคุณใช้เวอร์ชั่นที่เก่ากว่าคุณจะต้องมีปลั๊กอินการทำแผนที่ WordPress MU Domain

ดังนั้นจึงปรากฏว่าปลั๊กอินการทำแผนที่ WPMU นั้นรวมอยู่ในแพ็คเกจ AWS Lightsail Bitnami Multisite โดยไม่จำเป็น


ขอบคุณสำหรับสิ่งนี้! มันใช้งานได้สำหรับฉันโดยไม่ปิดใช้งานปลั๊กอิน WPMU Domain Mapping ฉันยังไม่พบซันไรส์ทุกที่ดังนั้นฉันไม่จำเป็นต้องออกความเห็นเช่นกัน
Monarch Wadia

2

ฉันเพิ่งเสร็จสิ้นการแก้ไขปัญหาที่คล้ายกันกับหลายโดเมนย่อย

ด้วย:

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

ไซต์ยังคงส่งข้อผิดพลาดเกี่ยวกับคุกกี้และในบางกรณีของการลองทำสิ่งที่แนะนำข้างต้น .........

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

สิ่งนี้ทำให้เกิดข้อผิดพลาดที่แตกต่างกันในการลบกำหนดการอ้างอิง "COOKIE_DOMAIN" เมื่อไปที่ไซต์ย่อย

ในที่สุดฉันก็สามารถเข้าสู่ระบบได้หลังจากตรวจสอบให้แน่ใจว่าทั้งสองสิ่งนี้ถูกกำหนดไว้เหนือข้อมูลเครือข่ายหลายไซต์

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

ลองทำให้แน่ใจว่าสิ่งเหล่านี้ถูกกำหนดไว้แล้ว ฉันหวังว่านี่จะช่วยได้.


หากต้องการชี้แจงข้างต้นดูเหมือนว่าจะทำงานกับเพิ่งกำหนด ('COOKIE_DOMAIN', '');
Ruben Apolinar

1

ฉันแสดงความคิดเห็น define ('SUNRISE', 'on');

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

จากนั้นฉันไม่เห็นข้อความแสดงข้อผิดพลาดด้านล่าง:

ข้อผิดพลาด: เบราว์เซอร์ของคุณถูกบล็อกหรือไม่รองรับ คุณต้องเปิดใช้งานคุกกี้เพื่อใช้ WordPress

เข้าสู่ระบบก็เริ่มทำงาน


1

ดังนั้นฉันจึงมีปัญหานี้เช่นกันและเจอวิธีแก้ปัญหามากมายเช่นที่กล่าวถึงที่นี่ แต่พวกเขาไม่ทำงาน

สิ่งที่ทำงานได้เพียงเพิ่มสิ่งต่อไปนี้ลงในคอนฟิกูเรชันหลายไซต์ใน wp-config:

define('COOKIE_DOMAIN', false);

เพื่อให้ส่วนใน wp-config มีลักษณะดังนี้:

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

โพสต์ที่นี่เพื่อให้ผู้อื่นสามารถค้นหาได้และใช้เวลาน้อยกว่าในการต่อสู้กับโต๊ะทำงานมากกว่าที่ฉันทำ


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

นี่คือ wp-config ใหม่ของฉัน ดูเหมือนว่าฮาร์ดโค้ดจะเป็นไซต์เฉพาะและไม่อนุญาตให้โดเมนอื่นทำงานได้ - มีเพียงโดเมนย่อยเท่านั้น คำตอบที่ดีที่นี่


0

ฉันมีปัญหานี้เช่นกันและไม่ได้ช่วยอะไรเลย พยายามใช้ Microsoft Edge และไม่ได้รับข้อผิดพลาด

อย่างน้อยในกรณีของฉันมันเป็นแค่ Google Chrome ที่ทำให้เกิดปัญหา


0

มันแปลกสำหรับฉัน (มากกว่าหนึ่งไซต์หลายไซต์) เพื่อตั้งค่า SUBDOMAIN_INSTALL เป็นเท็จ พูดตามตรงฉันไม่มีเวลาตรวจสอบเพิ่มเติมว่าทำไม ...

define('SUBDOMAIN_INSTALL', false);


0

การแก้ไขนี้สำหรับ ฉันฉันไม่ได้ติดตั้ง WordPress อย่างสมบูรณ์สำหรับชื่อโดเมนใหม่ ฉันสร้างเว็บไซต์ของฉันsubdomain.domain.com แล้วฉันต้องการที่จะยังคงเป็นnewdomain.comมากกว่าsubdomain.domain.com สิ่งนี้จำเป็น

  1. เครือข่าย WordPress > ผู้ดูแลระบบ> ไซต์เปลี่ยนไซต์เป็นชื่อใหม่ (ซึ่งฉันได้ทำไปแล้วไซต์ทำงานอยู่)
  2. เครือข่าย WordPress > ผู้ดูแลระบบ> การตั้งค่า> โดเมนเพิ่มชื่อใหม่ให้กับ ID ไซต์และทำเครื่องหมายใช่สำหรับโดเมนหลัก (เพื่อระบุว่าชื่อนี้เป็นชื่อหลัก) ในการค้นหารหัสไซต์คุณสามารถโฮเวอร์เหนือเครือข่าย> ผู้ดูแลระบบ> ไซต์ซึ่งจะบอกว่า ID ไซต์ใดที่คุณกำลังทำงานอยู่ หวังว่านี่จะช่วยให้ทุกคนที่ได้รับคุกกี้ถูกบล็อกหรือไม่สนับสนุนข้อความเมื่อพยายามเข้าสู่ระบบด้วยความปรารถนาดี SamTapsell

0

ฉันสามารถแก้ไขปัญหาหลังจากเพิ่มด้านล่างใน wp-config.php การอ้างอิง

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

โปรดลองเพิ่มสิ่งต่อไปนี้ในไฟล์ wp-config.php ของคุณ

ลบคุกกี้ทั้งหมดออกจากเบราว์เซอร์ของคุณก่อนทำการทดสอบ

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

เมื่อฉันทำการเปลี่ยนแปลงฉันไม่สามารถเข้าสู่เว็บไซต์ใด ๆ รวมถึงเว็บไซต์หลัก
Steve
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.