我正在使用ExpressionEngine 2(build:20101220)和Multisite Manager(v2.0 build:20101215)。我有一个主站点和30个子站点。我希望用户能够登录到任何子站点,同时登录到主站点。有一种方法可以执行此操作,以便用户登录配置文件中的所有站点,但浏览器在执行30次重定向设置cookie时会抛出错误。
所以,我创建了一个条件,以便根据您登录的域,为$ config ['multi_login_sites']创建正确的列表:
$domain = $_SERVER['HTTP_HOST'];
if ($domain == 'www.SiteB.com') {
$config['multi_login_sites'] = "http://www.MainSite.com/|http://www.SiteB.com/";
} else {
$config['multi_login_sites'] = "http://www.MainSite.com/";
}
我可以在页面上显示$ config ['multi_login_sites']并且可以看到当我在SiteB上时,它是正确的。但是当我登录时,我收到这些错误并且重定向不起作用:
A PHP Error was encountered
Severity: Notice
Message: Undefined index: 2
Filename: member/mod.member_auth.php
Line Number: 243
A PHP Error was encountered
Severity: Notice
Message: Undefined index: 2
Filename: member/mod.member_auth.php
Line Number: 244
mod.member_auth.php中的那些行是下面的'重定向'和'链接':
// We're done.
$data = array( 'title' => $this->EE->lang->line('mbr_login'),
'heading' => $this->EE->lang->line('thank_you'),
'content' => $this->EE->lang->line('mbr_you_are_logged_in'),
'redirect' => $sites[$this->EE->input->get('orig')],
'link' => array($sites[$this->EE->input->get('orig')], $this->EE->lang->line('back'))
);
如果我摆脱条件陈述并且只是使用 $ config ['multi_login_sites'] =“http://www.MainSite.com/|http://www.SiteB.com/”; 然后它运作正常。
这似乎是一个PHP问题,但也许它是一个EE / CodeIgniter的东西?是否有一些我不知道在条件中使用这种类型的变量?
答案 0 :(得分:1)
请确保您在www.siteB.com上使用de WWW
if($ domain =='www.SiteB.com')