我的ColdFusion服务器上的会话似乎每隔20分钟为我的一个应用程序超时,即使我为idletimeout
和this.SessionTimeout
设置了高(大约数小时)的超时时间在CFC。
无论我是否在20分钟内访问页面,都会发生这些超时 - 换句话说,会话甚至没有闲置20分钟,只是在登录后20分钟,用户再次变得未经身份验证 - 值#IsUserLoggedIn()#
变为NO,#GetAuthUser()#
的值变为空白。
我想知道是否有人之前遇到此问题以及是否有任何修复。
此外,文档中不清楚ColdFusion如何确定用户和登录会话是空闲的。很高兴知道这个会话数据的存储位置,理想情况下,可以查看它并查看可能导致这种奇怪行为的原因。
答案 0 :(得分:1)
同一服务器上的其他应用程序是否有更长的超时工作?
如果不这样做,那么可能您可以在Cold Fusion Administrator中设置最大sessionTimeout。这可能是原因。
Configuring and using session variables (CF9)
指定最长会话超时。应用程序代码不能设置超过此值的超时。此超时的默认值为两天。
另外,您可以编辑您的问题以提供一些代码吗?向我们展示您的应用程序配置。
此外,您是否有可能使用相同名称和不同超时配置的应用程序导致冲突。老实说,这只是一个猜测,因为我对应用程序名称非常谨慎。