您的位置:首页 > 其它

关于一个登录引发的session域配置的问题

2013-08-22 14:32 260 查看
我的本地有两个项目:

A , B

A掌管登录,进入B需要经过A判断是否登录

碰到问题B登录之后还是告知无法登录,打印$_SESSION发现A和B的内容不同,查看cookie里面PHPSESSID的Domain居然是项目C的,

于是去查看本地服务器里面的php.ini文件,注意如果本地有多个php,需要确定正在使用的是哪个php.ini,可以使用phpinfo()来查看:




PHP Version 5.4.17

SystemLinux junjie 3.8.0-27-generic #40-Ubuntu SMP Tue Jul 9 00:17:05 UTC 2013 x86_64
Build DateAug 12 2013 13:50:56
Configure Command'./configure' '--with-apxs2=/usr/local/apache2/bin/apxs' '--disable-cgi' '--enable-magic-quotes' '--disable-ipv6' '--with-openssl' '--with-zlib' '--with-bz2' '--enable-calendar' '--with-curl' '--enable-exif' '--with-gd' '--with-jpeg-dir' '--with-png-dir' '--enable-gd-native-ttf'
'--with-freetype-dir' '--enable-mbstring' '--with-mysql=/usr/local/mysql' '--with-pdo-mysql=/usr/local/mysql' '--with-pdo-odbc=unixODBC,/usr/local/unixODBC' '--without-pdo-sqlite' '--without-sqlite' '--without-sqlite3' '--enable-soap' '--enable-zip' '--with-pear'
Server APIApache 2.0 Handler
Virtual Directory Supportdisabled
Configuration File (php.ini) Path/usr/local/lib
Loaded Configuration File/usr/local/lib/php.ini
可以查看到目前apache正在使用的php.ini文件是哪一个。

打开php.ini,找到:

session.cookie_domain = 

发现此时什么都没有设置,那么我们应该把它设置为如下样子:

session.cookie_domain = ".mysite.com"

然后保存重启apache,在刷新页面发现PHPSESSID的domain都统一为mysite.com,这时就可以正确访问session了
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐