ASP.NET更改会话状态模式

时间:2013-01-31 20:43:32

标签: php asp.net .net iis-7.5 session-state

我正在尝试在同一台服务器上共享PHP和.NET之间的会话信息。会话将始终由.NET站点创建。根据我的研究,我开始相信会话状态模式“SQLServer”将是完美的,因为PHP可以直接在数据库中检查会话信息。

我的问题是.NET应用程序是在几年前开发的并使用InProc会话状态。我没有使用ASP.NET的经验。我知道,我无法测试从InProc到SQLServer的切换,并且该网站不得宕机!

1)使用web.config将会话状态从InProc更改为SQLServer会导致旧应用程序出现任何问题吗?

2)有没有办法对此进行测试,例如将所有文件复制到测试子域?

3)如果我将网站关闭,是否有任何理由我无法恢复旧的web.config并重新获得所有内容。

4)在.NET端使用SQLServer而不是InProc会导致任何问题吗?

5)我还注意到在IIS的站点中有一个用于更改会话状态的UI,是使用它还是web.config(或两者)更好?

感谢您的时间。

1 个答案:

答案 0 :(得分:1)

回答上述问题

  1. 是的,在更改为SQLServer时可能会出现问题,因为.NET会话不仅包含登录的人等,还可以保留用户会话信息,例如选定的项目和其他对象。 (我对你的特定站点了解不多,但是当你从InProc迁移到SQL时,你需要检查将存储在SQL中的任何会话对象也是可序列化的,否则它将失败)所以进行了大量的测试。 / p>

  2. 你可以通过复制当前在IIS中的网站来测试,可能是另一台带有IIS和ASP.NET的机器,并在web.config中进行相应的更改,如果你有生产和测试数据库,请指出它为了测试,我不建议使用任何生产数据库。

  3. 是的,如果您有任何

  4. ,请确保备份所有内容,包括数据库
  5. 是看项目(1)

  6. 你只需要一个,我只修改web.config,先备份它。

  7. 由于您希望实现单点登录,还有其他可供选择的选项,