我在 godaddy 服务中有一个 MCV3 应用程序,会话非常不稳定。
当我登录时它工作正常,但是在应用程序中导航时它会注销我,并点击刷新或在应用程序内部导航更多一点,就像那样(不询问凭据或任何东西)。在我的远程测试服务器和本地工作正常。
我在 godaddy 服务中有一个 MCV3 应用程序,会话非常不稳定。
当我登录时它工作正常,但是在应用程序中导航时它会注销我,并点击刷新或在应用程序内部导航更多一点,就像那样(不询问凭据或任何东西)。在我的远程测试服务器和本地工作正常。
这可能不是会话问题,而是身份验证 cookie/票证问题。GoDaddy(很可能)使他们的服务器负载平衡。这意味着您的应用程序实际上一次存在于多个服务器上。
在您的 web.config 中,如果您没有正确定义<machineKey>
属性,那么 IIS 会为您组成一个机器密钥。如果您未定义,则运行该应用程序的每台服务器都将创建自己的机器密钥。结果,一个服务器能够解密并读取您的身份验证票,而下一个请求会发送到另一台无法解密身份验证票的服务器,因为它是使用不同的密钥加密的,并且该服务器认为您没有登录。
要解决此问题,请打开您的 web.config 文件并定义您的<machineKey>
属性并重新部署。使用新部署的应用程序登录后,您应该会看到此问题消失。
机器密钥生成器(很可能,到这里的每个人都应该使用生成的 .NET 2.0 版本)