使用Codeigniter识别域/子域?

时间:2015-05-05 13:54:26

标签: php codeigniter session dns subdomain

我正在为2家公司创建一个分享网站。 在开发中,两个站点的URL结构是: 1)xx.domain.dev 2)yy.domain.dev

直播,他们将: 1)site.xx.com 2)site.yy.com

用户登录网站后,将根据用户的公司电子邮件地址为任一网站设置会话。

我想尽早设置这些会话。理想情况下,一旦网站被点击,根据它们来自哪个域或子域,我会相应地设置一个会话。

基本上,有没有办法检测网站加载的URL并相应地设置会话属性?

1 个答案:

答案 0 :(得分:1)

我做了类似的事情并在许多网站上共享了一个codeigniter应用程序。

我在application / config / config.php中执行类似的操作:

$domain= $_SERVER['SERVER_NAME'];
switch($domain){
  case 'www.domain1.com' :
  case 'm.domain2.com' :
    $config['domain_name'] = 'Some domain';
    $config['country']= 'Some country';
    break;
  case 'anotherdomain.fr' :
    // ...
}

所以我想同样的事情对你有用,只需用你的值进行移位,并在案例中设置$ _SESSION。类似的东西:

// initialize session if not already done

$domain= $_SERVER['SERVER_NAME'];
switch($domain){
  case 'xx.domain.dev' :
    $_SESSION['site']= 'xx';
    break;
  case 'yy.domain.dev' :
    $_SESSION['site']= 'yy';
    break;
}