【问题标题】:Why do I have unstable session in a MVC3 application with godaddy servers为什么我在使用 Godaddy 服务器的 MVC3 应用程序中有不稳定的会话
【发布时间】:2012-08-25 17:17:49
【问题描述】:

我在 godaddy 服务中有一个 MCV3 应用程序,会话非常不稳定。

当我登录时它工作正常,但在应用程序中导航时它会注销我,并在应用程序中点击刷新或导航更多一点,就像那样让我登录(不询问凭据或任何东西)。在我的远程测试服务器和本地测试服务器上工作正常。

【问题讨论】:

    标签: asp.net-mvc session login logout


    【解决方案1】:

    这可能不是会话问题,而是身份验证 cookie/票证问题。 GoDaddy(很可能)使他们的服务器负载平衡。这意味着您的应用程序实际上一次存在于多个服务器上。

    在您的 web.config 中,如果您没有正确定义 <machineKey> 属性,那么 IIS 将为您组成一个机器密钥。如果您未定义,则运行该应用程序的每台服务器都将创建自己的机器密钥。结果,一个服务器能够解密并读取您的身份验证票,而下一个请求会发送到另一台无法解密身份验证票的服务器,因为它是使用不同的密钥加密的,并且该服务器认为您没有登录。

    要解决此问题,请打开您的 web.config 文件并定义您的 <machineKey> 属性并重新部署。使用新部署的应用程序登录后,您应该会看到此问题消失。

    Forms authentication and Machine Key information on MSDN

    Machine Key Generator(很可能,到这里的每个人都应该使用生成的 .NET 2.0 版本)

    【讨论】:

    • 我无法表达我现在对你的感激之情。谢谢你。就是这样。
    • 史诗。这不仅是正确的,而且解释得非常完美和详细。非常好,这对我也有帮助。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-30
    • 2020-08-25
    • 1970-01-01
    • 1970-01-01
    • 2018-08-23
    • 2013-10-20
    相关资源
    最近更新 更多