【问题标题】:Custom HTTPHandler causing caching or session issues?自定义 HTTPHandler 导致缓存或会话问题?
【发布时间】:2010-03-18 13:35:49
【问题描述】:

所以我有一个在 .Net 3.5 下运行的自定义 CMS,完全用 c# 编写。该引擎已针对移动设备进行了优化,但也适用于普通 Web 浏览器。它还支持无 cookie 会话。太好了……

我选择不缓存任何内容(包括浏览器数据),以便完全从数据中控制渲染。直到最近这一切都很好。

引擎实现了一个基本的登录功能,它只是在会话对象中记录用户状态。

这种行为相当奇怪。用户将点击该网站没有问题。然后登录。登录将成功通过或只是重新显示登录屏幕,建议返回或重新显示缓存页面...如果登录成功,并发页面命中将在登录和注销状态之间任意切换...还建议要么会话状态不可访问或正在返回缓存页面。

我已经调试出了地狱......包括使用提琴手等。调试时行为消失。

嗯?

引擎上运行的站点之一是http://www.wiseguy.mobi(抱歉为南非定制,因此您可能无法获取密码短信)!

【问题讨论】:

  • 认为我们设法通过将会话状态移动到 SQL 来解决它...

标签: c# caching cross-browser httphandler mobile-website


【解决方案1】:

好吧,我一直是个笨蛋……

问题与我的 IIS 应用程序正在运行 2 个 WorkerProcesses 的事实有关。因此,当用户点击任一工作进程时,InProc 会话状态将返回不同的会话对象状态。

这就是 SQL SessionState 持久性解决它的原因。要么现在设置得很好,问题已经解决了......

【讨论】:

    猜你喜欢
    • 2012-06-12
    • 1970-01-01
    • 1970-01-01
    • 2011-10-27
    • 1970-01-01
    • 2011-04-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多