【问题标题】:IIS HTTP Redirect too many times errorIIS HTTP 重定向太多次错误
【发布时间】:2018-04-15 09:57:45
【问题描述】:

我在尝试在 IIS 中为我​​的 Web 应用程序设置 http 重定向时遇到了一些问题。我有 2 个 DNS 别名分配给“test.website.com”和“test1.website.com”框,我正在尝试将“test1”重定向到测试,但它似乎不起作用。我在绑定中列出了两个 URL,在 IIS 中的 HTTP 重定向表单下我检查了“将请求重定向到此目标”框并将“http://test.website.com”url 作为链接并检查了“将所有请求重定向到确切的目标“也一样。状态码是永久性的,我仍然收到 ERR_TOO_MANY_REDIRECTS 错误,我不知道如何解决这个问题。任何帮助将不胜感激。

【问题讨论】:

  • 听起来您的配置不太正确,因为您在无限循环中来回重定向。您可能设置了不止一个重定向。
  • 我在 IIS 的配置搜索视图中只看到一个 httpRedirect 实例...
  • 您可能已经设置了另一个重定向,不一定在您的 httpRedirect 模块中,它可能是另一种形式的重定向,可能在您的 web.config 或其他 IIS 模块中?

标签: asp.net http redirect iis


【解决方案1】:

问题

在 IIS 管理器中,您可以在其中指定重定向目标的 HTTP 重定向表单在您应用更改时只做一件事:它将<httpRedirect> 标记添加到网站的 Web.config 文件中。下图说明了这种变化。

在一个完美的世界中,IIS 会足够聪明地识别它已经到达指定的目标而不是重定向。遗憾的是,IIS 不够聪明。它会反复搜索自己。找到自己,并告诉自己回去重新搜索。最终,会抛出 ERR_TOO_MANY_REDIRECTS 错误。

我的工作

  1. 创建一个虚拟网站(单页 Web 应用程序即可)。
  2. 在网站的 Web.config 中添加 httpRedirect 标记,将用户重定向到您要为其创建别名的网站(在您的情况下为“test.website.com”)。
  3. 在 IIS 中,创建一个引用您的虚拟网站源代码的新网站。
  4. 在 IIS 中,将虚拟网站的绑定设置为您要为其创建别名的网站的别名绑定(在您的情况下为“test1.website.com”)

注意

虚拟网站的内容(或缺少内容)无关紧要,因为访问者将被重定向到别名网站,然后才能查看虚拟网站的任何内容。话虽如此,让虚拟网站显示一个页面可能会很聪明,该页面会通知任何查看者在重定向时出现问题,以防被查看。

【讨论】:

    【解决方案2】:

    问题是您的两个站点都指向同一个文件夹。最简单的做法是将 test1 站点移动到单独文件夹中的单独 IIS 网站。将绑定分开,这意味着将 test1 绑定放在 test1 站点上,将常规测试绑定放在测试站点上。然后将重定向仅放在 test1 站点上。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-08-22
      • 2021-03-25
      • 1970-01-01
      • 2015-12-08
      • 2016-10-20
      • 1970-01-01
      相关资源
      最近更新 更多