Coldfusion 8 Cookie 在 IE8 会话中消失
我正在处理大约 10 年前使用 Coldfusion 8 编写的票务系统。当用户经过身份验证并登录时,有关其 ID 的用户信息将保存在 CF cookie 中,并且站点使用这些 cookie 来填充用户的 ID用户填写票据时的姓名等。
该应用程序在 Internet Explorer 6.0 中运行良好,但是我们正在慢慢迁移到 Internet Explorer 8,因此这里有一些用户已经开始全职使用 IE8。我们已经收到一些 IE8 用户的投诉,在会话中,cookie 丢失/变为空,并且用户无法完成票证。用户可以正常登录,但有时在会话中间,会出现“NAME UNDEFINED”等错误。它们似乎并不孤立于特定的罚单,因为我查看了我们收到的所有投诉,并且在各种罚单中都发现了它们。我检查了日志/屏幕截图,果然,员工 ID 的 cookie 为空。我在整个网络上进行了搜索,但找不到对此问题的良好解决方案。
我考虑过将 cookie 转换为会话变量,但这将是一项艰巨的任务,并且需要大量测试。
有什么想法吗?提前致谢。
I am dealing with a ticketing system that was written about 10 years ago using Coldfusion 8. When a user is authenticated and logins, the user's information about his ID is saved in CF cookies, and the site uses those cookies to fill it the user's ID, name, etc. when the user is filling out tickets.
This application works fine in Internet Explorer 6.0 However we are slowly migrating to Internet Explorer 8, so there are some users here that already started using IE8 fulltime. We've been getting complaints from some of these IE8 users, in which mid-session, the cookies are lost/become null, and the user can't complete the tickets. Users are able to login just fine, but sometimes in mid-session, errors like "NAME UNDEFINED" appear. They don't seem to be isolated to particular tickets because I've looked at all the complaints we have, and they're discovered in all sorts of tickets. I check the logs/screenshots and sure enough, the cookie for the employee ID is null. I've searched all over the web and I can't find good fixes for this.
I thought about converting cookies to session variables, but that would be a massive undertaking and require a lot of testing.
Any thoughts? Thanks in advance.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
域名有可能发生变化吗?您可以在 www.servername.com 和 servername.com 之间切换吗?除非您正在编写域 cookie,否则域中的更改将导致为一个域编写的 cookie 无法从另一个域访问。您可以在 Application.cfm 或 Application.cfc 文件中启用域 cookie。在 Application.cfc 中设置
或在上设置
标签。这将写入可从任何子域访问的 cookie。setDomainCookies="true"
属性;cookie 过期了吗?您可以设置 cookie 的到期日期。也许它在用户会话过期之前就过期了?
您是否尝试过使用 IE 开发工具栏来跟踪 cookie?您可以使用它来查看为您的网站设置的 cookie。
Any chance the domain is changing? You could be switching between www.servername.com and servername.com? Unless you were writing domain cookies a change in the domain would cause the written for one domain cookies to be unaccessible from another. You can enable domain cookies in your Application.cfm or Application.cfc file. Either set
<cfset this.setDomainCookies = true />
in Application.cfc or set thesetDomainCookies="true"
attribute on your<cfapplication />
tag. This will write cookies accessible from any subdomain.Have the cookies expired? You can set an expiration date for the cookie. Perhaps it is expiring before the user's session expires?
Have you tried using the IE development toolbar to track the cookies? You can use it to view cookies set for your site.
在我的一个应用程序中,我们的用户面临着同样的问题。它突然开始,没有对代码进行任何更改。我们建议他们清除缓存并尝试,它可以工作。但我需要知道根本原因及其修复。
谢谢
In one of my application , our users are facing the same issue.It started all of sudden without any change in code.We suggest them to clear cache and tr-try and it works.But i need to know the root cause and its fix.
Thank you