Question

From this answer, a MU site has the following in wp-config.php:

define('WP_ALLOW_MULTISITE', true );
define('MULTISITE', true);
define('SUBDOMAIN_INSTALL', true);
define('DOMAIN_CURRENT_SITE', 'www.example.com');
define('PATH_CURRENT_SITE', '/');
define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);
define('COOKIE_DOMAIN', '');
define('ADMIN_COOKIE_PATH', '/');
define('COOKIE_DOMAIN', '');
define('COOKIEPATH', '');
define('SITECOOKIEPATH', '');

If I try to login to a child site @ http://example2.net/wp-login.php, I receive the error:

The constant "COOKIE_DOMAIN" is defined (probably in wp-config.php). Please remove or comment out that define() line.

If I comment out:

define('COOKIE_DOMAIN', '');

I receive the error:

ERROR: Cookies are blocked or not supported by your browser. You must enable cookies to use WordPress

The site the answer above refers to is working with the definitions above.

Any ideas why the same definitions are not working on this earlier installed Wordpress? (perhaps from around v4.3?)

Was it helpful?

Solution 5

I bypassed the inbuilt Wordpress domain mapping, and instead used the Wordpress MU Domain Mapping plugin, which proved to be much easier to maintain and troubleshoot.

OTHER TIPS

Strangely it worked for me (on more than one multisites) to set SUBDOMAIN_INSTALL to false. To be honest, I hadn't had time to investigate further why ...

define('SUBDOMAIN_INSTALL', false);

Ensure sunrise.php is in the wp-content directory and that you have defined the following in wp-config.php:

define( 'SUNRISE', 'on' );

With sunrise on, you should not define COOKIE_DOMAIN anywhere else as it handles that dynamically on all mapped domains.

My guess is that either you don't have define( 'SUNRISE', 'on' ); or you don't have sunrise.php installed correctly. Another thing to check would be that the domain is correctly configured in wp-admin.

the first error come from additionnal code which would probably not be usefull with the actual WordPress version (4.7.3 today)

try to comment the line define("SUNRISE"... in wp-config.php

For anyone still struggling with this. It turned out it was the sunrise code that was causing the conflict:

<?php
if ( !defined( 'SUNRISE_LOADED' ) )
    define( 'SUNRISE_LOADED', 1 );

if ( defined( 'COOKIE_DOMAIN' ) ) {
    die( 'The constant "COOKIE_DOMAIN" is defined (probably in wp-config.php). Please remove or comment out that define() line.' );
}

...

I commented out the sunrise in wp-config.php

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

And added

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

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

That made me login to my multisite again and all sub sites, but worked like a charm!!!

Really hope this helps someone else struggling with this very very frustrating issue. :)

Licensed under: CC-BY-SA with attribution
Not affiliated with wordpress.stackexchange
scroll top