PHP会话丢失,IIS中有多个站点

时间:2012-08-02 15:26:17

标签: php session ssl iis-7

在这里有点奇怪,这可能只是由于我没有完全理解IIS。

我们在IIS中有两个网站(我们使用this method配置)。一个被命名为例如“https://theServerName.domain.com”,另一个是“https://development.domain.com”。第二个基本上是第一个的克隆,允许我们在“上线”之前测试变化。

登录脚本的工作方式如下:

  • 加载索引页面,页面检查会话,如果会话不存在,则将用户发送到登录页面
  • 用户登录后,将根据数据库检查凭据。如果凭据有效,则会创建会话并将用户发送回索引页

这适用于“theServerName.domain.com”。但是,当我们登录“developer.domain.com”时会创建会话,但是当我们被发送回索引页面时,该页面会检查会话但找不到会话。

我很困惑,因为登录页面和登录验证页面的域名是相同的,所以我唯一能想到的是多个网站的情况是否令人困惑。

有什么想法吗?

编辑1:我忘记了一些重要的信息,即这似乎只发生在IE 8中 - 在Firefox 14.0.1,Opera 12.01,Chrome 21.0和IE 9中经过测试和工作。

编辑2:我不知道这是否有帮助,但IE 9引发了错误“Internet Explorer增强安全配置阻止了下面列出的网站的内容.javascript:// void(0)”(这是点击“继续访问此网站(不推荐)。”,因为没有安装证书)

1 个答案:

答案 0 :(得分:0)

this answer的帮助下,我终于意识到这个问题是,因为IIS虚拟目录/应用程序中有下划线