IIS 7.5 重写错误?无限循环

Posted

技术标签:

【中文标题】IIS 7.5 重写错误?无限循环【英文标题】:IIS 7.5 Rewrite Bug? Infinite loop 【发布时间】:2012-01-01 07:56:18 【问题描述】:

我们使用带有经典 ASP 的 IIS 7.5 URL Rewrite。 99% 的情况下一切正常,但是,完全零星地,我们网站的页面会无缘无故陷入重定向循环。

意思是,我们的文章在 99% 的情况下都可以正常呈现,但是就像今天早上一样,当访问一篇文章(成千上万篇)时,浏览器会响应“页面未正确重定向”。我使用 Firefox,但所有浏览器中的所有用户都会出现这种情况。这也偶尔出现在站点主页和其他页面上,因此它似乎与特定的重写规则模式无关,而是与整个重写规则引擎有关。

重置 IIS 可立即解决问题,并且页面加载正常。发生此问题时,重置 IIS 似乎是解决此问题的唯一方法。

IIS 日志显示任何受影响页面的 301 重定向。在这种情况下,一篇文章页面有数千条 301 重定向日志记录。重置 IIS 更正了该行为。

有没有其他人遇到过这个问题,或者有任何解决方法的想法?

【问题讨论】:

浏览器是否被重定向到请求的同一个 URL?还是在两个相互重定向的不同 URL 之间被重定向?您可以从您的 web.config 中发布您的 URL 重写规则吗? 抱歉,没有收到此评论的通知。他们重定向到相同的 URL,我无法发布我们的 web.config。没有适用的通用重写规则,因为它们都不同(超过 100 条规则),所以没有具体规则。 您最终解决了这个问题吗?我正在经历类似的行为。一个 ASP.NET 网站在 99% 的时间内都运行良好,然后偶尔(过去几个月中两次)该网站的主页会开始出现无限重定向循环。重新启动 IIS 即可解决问题。 没有。它只是消失了,几个月没有发生过。可能是 Windows 更新。很难说。 【参考方案1】:

当我遇到这个时,它是由 index.cfm 是第一个默认文档引起的,即使它是一个 Asp.net 应用程序并且没有 index.cfm 页面。从默认文档列表中删除 index.cfm 修复了无限循环。

【讨论】:

没有看到您的评论。 index.cfm 不在列表中。

以上是关于IIS 7.5 重写错误?无限循环的主要内容,如果未能解决你的问题,请参考以下文章

.htaccess重写导致无限循环

页面未正确重定向 - HTTPS HTACCESS 重写错误

在Django中覆盖保存方法时的无限循环

为啥错误:重新渲染太多。 React 限制了渲染的数量以防止无限循环。?

导致内存错误的无限循环错误

vue 错误:组件渲染函数中的无限更新循环