phpcrazy
(phpcrazy)
新手上路

初级会员
UID 36571
精华
0
积分 26
帖子 16
金钱 26 喜悦币
威望 0
人脉 0
阅读权限 10
注册 2004-10-20
状态 离线
|
[广告]: 代充Paypal帐号美元
求:Session 问题
我最近遇到一个非常奇怪的问题,我机器的环境是:
PHP Version 4.4.0 + Apache/1.3.27 + MySQL - 4.1.18-nt
我在服务器上配置了几个虚拟主机
NameVirtualHost *:80
<VirtualHost *:80>
DocumentRoot D:/www/web_root
ServerName 127.0.0.1
AddType text/html .html
AddHandler server-parsed .html
<Directory D:/www/web_root>
Options FollowSymLinks MultiViews Includes
</Directory>
php_value "include_path" "."
</VirtualHost>
<VirtualHost *:80>
ServerName web_test1.com
DocumentRoot D:/www/web_test1
php_value include_path ".;D:\www\web_test1\include"
ErrorDocument 404 /error.php
</VirtualHost>
<VirtualHost *:80>
ServerName web_test2.com
DocumentRoot D:/www/web_test2
php_value include_path "."
ErrorDocument 404 /error.php
</VirtualHost>
有以下两个文件:
test1.php
<?
session_start();
$_SESSION["LOGIN_USER"] = "user1";
print("<a href='test2.php'>test2.php</a>");
?>
test2.php
<?
session_start();
print($_SESSION["LOGIN_USER"]);
?>
结果是可以得到 user1
可是如果我把这两个程序放到第二个和第三个虚拟主机的时候,却得不到Session
各位高手给看看到底是怎么回事呢?
非常的郁闷啊。。。
后来我又在第二个虚拟主机上,增加了一个文件:
<?
phpinfo();
?>
发现了一个问题,当我第一次访问的时候如下(图1):
HTTP Response Headers
X-Powered-By PHP/4.4.0
Set-Cookie PHPSESSID=4f8b4c62018e6fc1dddf74656fc2dfda; path=/
Expires Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma no-cache
Keep-Alive timeout=5, max=14
Connection Keep-Alive
Transfer-Encoding chunked
Content-Type text/html; charset=gb2312
当我刷新页面的时候,出现如下(图2):
HTTP Response Headers
X-Powered-By PHP/4.4.0
Set-Cookie PHPSESSID=ff5e62bfe39f0cd8c540a7f9d858b5c5; path=/
Expires Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma no-cache
Keep-Alive timeout=5, max=14
Connection Keep-Alive
Transfer-Encoding chunked
Content-Type text/html; charset=gb2312
我发现 PHPSESSID 变了,按理说,我没有关闭浏览器,PHPSESSID的值不应该变,但是不知是什么原因,竟然每次刷新都发生变化。
不知哪位高人给解释一下,到底是什么原因呢。
附件: 您所在的用户组无法下载或查看附件
|
|