阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

PHP二级域名session共享方案

98次阅读
没有评论

共计 1119 个字符,预计需要花费 3 分钟才能阅读完成。

一般来讲网站都会有主站和子站,比如域名是 linuxidc.com,那么一般来讲 linuxidc.com 和 www.linuxidc.com 就会是主站,而像 bbs.linuxidc.com 就会作为论坛而存在的子站。

而且要注意的是,虽然一般设置域名 dns 解析的时候,都会将 linuxidc.com 和 www.linuxidc.com 都设置好指向主页虽然看起来效果是一样的。但是这两个确是不同的域名,也就是如果是默认的情况下的话,这两个域名的 cookie 的 domain 是认为不同的。

而一般,如果网站是有用户登录功能的,我们一般都希望不管是在什么样的二级域名中,都是保持这种登录状态的。

所以,为了解决这种二级域名 session 共享问题,推荐使用如下方案:

<?php
ini_set(“session.cookie_domain”,’linuxidc.com’);// 注:此句必须放在 session_start() 之前
session_start();
$_SESSION[‘user_name’] = ‘ 测试用户名 ’;
echo $_SESSION[‘user_name’];
?>

需要注意的是:

1、ini_set(“session.cookie_domain”,’linuxidc.com’); 必须放在 session_start(); 之前。

2、域名 linuxidc.com 必须跟浏览器实际访问的域名是相匹配的。

其实道理很简单,就是将主域名和二级域名的 domain 都设置为主域名,这样就可以实现 session 在不同的二级域名之间共享访问了。

Ps. 在 PHP 的 CI 框架中,如果想实现其自带的 Session 类可以在不同的二级域名中共享,则在 /application/config/config.php 文件中,做如下设置:

$config[‘cookie_domain’] = “linuxidc.com”;

CentOS 6.3 安装 LNMP (PHP 5.4,MyySQL5.6) http://www.linuxidc.com/Linux/2013-04/82069.htm

在部署 LNMP 的时候遇到 Nginx 启动失败的 2 个问题 http://www.linuxidc.com/Linux/2013-03/81120.htm

Ubuntu 安装 Nginx php5-fpm MySQL(LNMP 环境搭建) http://www.linuxidc.com/Linux/2012-10/72458.htm

《细说 PHP》高清扫描 PDF+ 光盘源码 + 全套教学视频 http://www.linuxidc.com/Linux/2014-03/97536.htm

PHP 的详细介绍 :请点这里
PHP 的下载地址 :请点这里

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-20发表,共计1119字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中