我有一个 ASP.NET azure Web 应用程序。最近,用户经常被重定向到登录页面,甚至在执行连续操作时也是如此。当我检查日志文件时,有很多“请求的表单例份验证失败。原因:提供的票证已过期”。记录错误。
该应用使用 1 个实例(1 个内核、1.75 GB RAM),迄今为止内存消耗从未超过 30%。我认为在这种情况下 MachineKey 没有问题。 web.config部分如下:
<sessionState mode="InProc" timeout="10" />
<authentication mode="Forms">
<forms loginUrl="~/Login/Index" timeout="10" />
</authentication>
既然已经投入生产,我会毫不犹豫地转向 SQL 或 Redis 存储,除非存储是罪魁祸首。还有什么我可以检查来解决这个问题吗?或者我错过了一两个设置?
最佳答案
尝试将 Forms 标记的 movingExpiration 属性设置为 true
<forms loginUrl="~/Login/Index" timeout="10" slidingExpiration=true />
slidingExpiration 确保计时器在每次请求后重置,否则即使用户处于事件状态,用户也将在超时到期后注销。
关于c# - ASP.NET Azure Web应用程序频繁重定向到登录页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38419237/