1

EE 2.8.1 with MSM (4 sites)

We've duplicated our production site to a development local environment. Same server configuration, with the exception of some path info. Production server and site is running fine, but we're redesigning the site, and don't want to work on production.

So, on our DEV side:

Each of the sites (subdomains) work and I can view each of the subdomains from a 'visitor' view which tells me all looks good from the outside world, and I can log in to the default_site.

However, when I attempt to change to one of the other sites in CP, it logs me out and redirects to the admin login form.

At this point, I am unable to login, as it throws no error in the logs, and simply redisplays the login screen.

Cleared browser cache/cookies, and I can login to the main site, but not access any other sites through CP.

I've read through several different listings and posts here, and on the EE dev forum. I've tried all the $config tricks and tickles, to no avail.

Checked all the paths to make sure they're correct in index.php/admin.php In the exp_sites table, I've even checked all the serialized data to verify all is good there for each of the sites.

I'm fairly new to EE, and understand 2.8.1 and MSM are having some issues. If anyone has found other helpful things to look at, or poke, I would appreciate the responses!

UPDATE:

EE 2.8.1 with MSM Sites 2.1.5

Despite all attempts to track down the issue, I am still unable to change sites within CP. When the redirect occurs, it sends back to login screen, and without clearing my browser cache/cookies, it will not allow admin to login.

I can login to the main site (after flushing browser cookies) and can do everything in the main site.

Perhaps it is an issue with 2.1.5 MSM and 2.81 EE?

/system/expressionengine/config/config.php:

$config['app_version']                  = '281';
$config['license_number']               = "xxx-xxxx-xxxx-xxxx";
$config['multiple_sites_enabled']       = "y";
$config['index_page']                   = "";
$config['debug']                        = '1';
$config['cp_url']                       = http://url.tomycontrolpanel.net/admin.php';
$config['is_system_on']                 = "y";
$config['disable_csrf_protection']      = "y";
$config['cookie_domain']                = ".mydevdomain.com";
$config['cookie_httponly']              = "";
$config['cookie_path']                  = "";
$config['cookie_prefix']                = "";
$config['admin_session_type']           = "s";
$config['user_session_type']            = "c";
$config['require_ip_for_login']         = "n";
$config['secure_forms']                 = "n";
$config['cp_session_ttl']               = 14400;
$config['user_session_ttl']             = 3600;

With this config I am able to login to my default site CP, but I get logged out when changing to any site within my list of sites.

Update->Updated: With MSM, be sure you have correctly set $assign_to_config variables in your index.php file for main site:

 $assign_to_config['site_name']  = 'site_short_name';
 $assign_to_config['cp_url'] = 'webURL_to_control_panel';
 $assign_to_config['site_url'] = 'webURL_To_website';
2
  • Can someone post how this was resolved? I have the same issue. Thanks Apr 27, 2015 at 7:31
  • Did my answer below have any bearing? Typically this occurs when the Sites have differing cookie domains or cookie settings. Apr 27, 2015 at 16:14

2 Answers 2

0

It sounds like your cookies may be trying to set for the production domain on the other MSM Sites instead of whatever your dev environment is setup as. Check your Cookie Settings. Since you are unable to log in to the control panel on the other Sites, you may need to use the config override so that it will be applied to each Site.

6
  • Changed settings in the config editor, and set the cookie domain and path. Checked to make sure the cookie folder was correct, and permissions set to be writable. After saving the changes, I was unable to change sites within CP, and after logout, I was unable to login again to main CP, getting "This Form Has Expired Error". exp_sites table in db, deserialized, made edit to reverse what was changed, and I am able to log in, but not change sites, as before. Jun 9, 2014 at 15:18
  • Cookie folder? Also these config values should be set in the file itself, and will override your database settings, so you do not need to tamper with exp_sites to debug this. Jun 9, 2014 at 21:03
  • Sorry, cookie_path is what I meant. I noticed when I put a valid path, nothing works, not even the login for the main site. When values are empty, I can at least login to the admin main site, but still cannot change to the other sites. Jun 10, 2014 at 21:21
  • Cookie Path would only be necessary if you are running EE from a subfolder in the URL and need to separate them. What about the Cookie Domains? Do they match exactly? Jun 11, 2014 at 20:17
  • So, I should be setting the cookie_path in each sites index.php file? Jun 13, 2014 at 15:17
0

I have had this happen before. The cause is that some of the other MSM sites do not have the same security settings as the main site. i. e. default_site is set to use cookies, while site #2 uses cookies and sessions. Until they were all configured the same, switching sites kicks you out.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.