【发布时间】:2013-05-02 00:15:46
【问题描述】:
在 IE 上,我的会话无法按我的意愿工作。
脚本::
<?
session_start();
echo "Testing sessions " . $_SESSION['test'] . " working";
$_SESSION['test'] = 'are';
?>
- 加载页面(显示“正在运行的测试会话”)
- 刷新页面(显示“测试正在运行”)至少我希望这个结果..
在 Chrome 中它可以工作 在fireFox它工作 在即它不起作用(取决于)
情况 1 失败 (IE) http://mysite.d.my-domain.com/(默认为 index.php)
情况 2 作品 (IE) http://prj.my-domain.com/mysite/D(默认为相同的 index.php)
两者都链接到我的 FreeBSD / apache 2.2 服务器上的相同物理位置。
如果我放置 session_id('someID') 它可以工作,但 session_id 不是我需要的。
我应该从以下方面看: - PHP(这是基于服务器的,所以我看不出会话失败的原因) - apache(这将如何受到浏览器的影响) - IE(浏览器会识别一个虚拟主机和另一个虚拟主机吗?)
请帮助所有搜索都是徒劳的
【问题讨论】:
-
你真的需要在这些字符串后面加上
$_SESSION['test']吗?为什么不在字符串之前实例化呢。 -
如果我把它放在 echo 部分之前它总是可以工作的,因为它会在我输出之前存储在会话中。这样你只会在页面刷新的输出中看到“are”这个词。事实上,在某些情况下,IE 中失败的部分是什么
-
这两种情况都在 apache 的
部分中定义 -
您更改了会话设置吗?
-
不,我没有改变任何东西。我只是使用两条不同的路线到达同一位置,这导致 IE 的行为不一致
标签: php apache internet-explorer session browser