【发布时间】:2011-12-20 21:41:09
【问题描述】:
我们有一些网页是用 JSP 编写的,还有一些是用 PHP 编写的。
我们想要完成的是,每当用户登录(通过 PHP 页面)时,我们希望保存会话信息(用户 ID、登录时间等)并在访问 JSP 页面时使用相同的信息.
我们如何使用相同的会话 ID 共享 JSP 和 PHP 会话信息?
有没有办法做到这一点,或者它们是否会自动相互兼容?
【问题讨论】:
-
我建议使用通用数据库表来存储会话信息,并为每种语言编写自己的会话处理例程。
-
Thanx Scuzzy。有没有更好的方法来做到这一点?在这种情况下,我们必须在注销时从数据库中删除会话信息。但是如果用户关闭浏览器或关闭他的系统退出注销会发生什么?我们在 db 中留下了多个无用的条目。
-
好的,用户关闭浏览器的问题可以通过 cookie 本身来解决,一个空或 0 过期将在浏览器关闭时过期 cookie(以及会话 ID)。从那里您可以构建自己的垃圾收集功能来清理一段时间内不活动的会话表。处理此问题的最简单方法是在验证登录详细信息之前,根据上次使用的时间戳清理旧行,理想情况下,您可能只想在每次会话更新之前执行此操作,以确保已将连接闲置时间过长的用户会自动注销。