2

在 IE 上,我的会话无法按我的意愿工作。

剧本::

<? 
session_start();

echo "Testing sessions " . $_SESSION['test'] . " working";

$_SESSION['test'] = 'are';
?> 
  1. 加载页面(显示“测试会话工作”)
  2. 刷新页面(显示“测试正在运行”)至少我希望这个结果..

在 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(浏览器会从另一个虚拟主机中识别出一个虚拟主机吗?)

请帮助所有搜索都是徒劳的

4

1 回答 1

1

经过长时间的搜索,我终于找到了解决方案。

显然 IE 不能很好地处理_我的子域名称中的下划线“”字符。

但是更改mysite_com.mydomain.commysite-com.mydomain.com会话又开始工作了。

所以实际上是 url 把事情搞砸了。但仅作为子域部分 mydomain.com/mysite_com起作用。

于 2013-05-08T17:44:42.183 回答