我对刚刚投入生产的网站遇到了麻烦。出于某种原因,尽管设置似乎在15分钟的会话超时时是正确的,但用户报告说他们必须在大约5分钟后再次登录。
我可以检查什么?我该怎么解决这个问题?我不能在本地或我们的QA环境中重现它。我可以查看IIS设置吗?客户端上的浏览器设置?
下面的是我的身份验证的web.config条目。谢谢!
<authentication mode="Forms">
<forms loginUrl="~/admin/Login" cookieless="UseCookies" requireSSL="false" timeout="15" slidingExpiration="true" name="{C8226EAB-2423-45ce-8A1D-3BC227F1BEE9}"/>
</authentication>
答案 0 :(得分:1)
您需要将机器密钥添加到web.config文件中。它会在每个应用程序池回收时自动生成,并导致您的身份验证票证cookie值失败。
这类似于以下问题:
答案 1 :(得分:0)
我认为您还需要设置域名设置。不要设置www.yourdomain.com,因为如果用户访问yourdomain.com,就会获得不同的cookie。
使用我们的www:yourdomain.com
将其设置为根名称<authentication mode="Forms">
<forms
path="/"
domain="yourdoman.com" // <- maybe this key is the reason
/>
</authentication>
答案 2 :(得分:0)
确保在IIS管理器中将会话设置为至少15分钟。