MVC 3.0 formsauthentication在localhost服务器中进行身份验证,但不在webhost上进行身份验证

时间:2012-07-09 03:13:48

标签: asp.net-mvc asp.net-mvc-3 forms-authentication

所以我遇到了类似的问题:

TTP://stackoverflow.com/questions/3694475/asp-net-forms-authentication-authenticates-in-localhost-server-but-not-on-the-w

但我使用的是MVC 3.0而不是Web表单。基本上,我会登录,点击几秒后,它会再次将我重定向到登录页面。这是在我将网站发布到我的网站主机上之后发生的,但在我的本地主机上它运行正常。起初我以为它会在web.config上超时,但它仍然有默认的2880.所以我抓了它。

之前有人遇到过这样的问题吗?

编辑:

看到有关为应用程序生成计算机密钥以防止应用程序池回收的一些建议。想知道我怎么能产生那个?我不认为我可以从我的webhost(arvixe)访问iis。

http://forum.winhost.com/showthread.php?t=8407

1 个答案:

答案 0 :(得分:1)

所以我想通了,它停止了把我退出..至少现在。

显然需要一个机器密钥,因此应用程序会知道cookie是否将使用相同的身份验证。我刚刚生成了一个机器密钥并将其放在我的webconfig上

例如:

<configuration>
    <system.web>
        <machineKey decryption="AES" decryptionKey="C03B1AB0BC1ACCD18EA915CBD87373010AD0DEC430A69871,IsolateApps" validation="AES" validationKey="C0ED7C430148AD4BC6505085DA4FD0DD3EE2453B566FC4EA4C7B3C2DCAB2025A79C774370CA884DF909CE9A3D379E544B7890D0A1CEE164141D3A966999DC625,IsolateApps" />
    </system.web>
</configuration>

所以是的,这很有效,我希望它能保持原样。

感谢大家的回复!