我的生产服务器上有一个非常奇怪的行为,一周内只发生几次。在表单登录 POST 上,重定向被发送到看起来像无 cookie 的 URL,例如:
"/(F(kD5qGnK-0b5L80VYgScenFuCnjQsLR67HhXq-BWXS1hL45hhqL8AiLlEyB-9CuJgutiyXzN42w8Bo_cm2o73GFWP_fuQ1AtPfXSaB7odZYAOBnuNW3Yy873fQDpRzYgOVo3Ee48gaCbS7FUIyOBA3CksCTZ3N6YCZ7pcZylZEo01))/SiteSpecificPath/CMS/edit/"
通常发生的是重定向到“/SiteSpecificPath/CMS/edit/”。
这反过来会导致重定向循环返回到 login.aspx 页面并继续这样。
我不想使用 cookieless 所以问题是这是如何触发的?有没有办法禁用这种行为?我查看了所有级别的配置文件,并且在所有地方都将 cookieless 设置为 false。
该站点是一个 EPiServer CMS 站点,但在这种情况下,它似乎与正常的 asp.net 表单登录过程有关,该过程由于某种原因触发了对无 cookie URL 的切换。
我找到了一些关于 cookieless 触发重定向循环的参考资料,但在我的情况下,奇怪的是为什么它甚至首先开始使用 cookieless URL。
我还使用高级日志记录进行了调试,以查看从浏览器发送的所有标头,但我没有看到任何奇怪的地方。Cookie 会正常发送,包括 ASP.NET 会话 cookie。
编辑:这不是访问问题。给定的用户可以正常登录,但有时会进入此重定向循环。
一些细节:Windows Server 2008 R2、EPiServer 6 R2、ASP.NET 4 上的 IIS7