【问题标题】:Server 2008: Redirect via IIS7 or ASP.NET?Server 2008:通过 IIS7 或 ASP.NET 重定向?
【发布时间】:2011-01-20 18:44:22
【问题描述】:

希望是一个快速简单的问题。

我有一个包含多个子域的域。当我尝试重定向根目录(www.example.com 和 example.com)时,它可以正常工作,但是它也会转发子域。每个子域(包括根站点)都设置为单独的站点。我不想只转发根站点的子域。

这在 IIS7 中是否可行,还是我应该只在索引页面中编码重定向?我敢肯定有办法.....

【问题讨论】:

    标签: asp.net iis-7 windows-server-2008


    【解决方案1】:

    如果您在 IIS 中使用主机标头并且每个子域都在它自己的站点中,那么只要它与主机标头匹配,它将在到达您的根站点之前转到该站点。

    如果您实际上是在一个 IIS 站点下运行它们,那么您可以使用 URL 重写将子域重定向到文件夹(例如 site.domain.com -> domain.com/site)。

    我对您问题中的措辞并不完全清楚,但听起来我首先提到的主机标头正在导致您的问题。如果它们确实是不同的 IIS 站点,请检查主机标头是否设置正确,并且它们没有被任何负载平衡器、代理或 Web 服务器前面的任何其他框删除/更改。

    【讨论】:

    • 谢谢,在阅读了更多内容后,我最终尝试了您的建议。
    【解决方案2】:

    当然可以,您只需将请求 URL 主机与您要重定向的名称进行比较:

    string host = HttpContext.Current.Request.Url.Host.ToLower();
    if (host == "redirectme.domain.com")
    {
        Response.Redirect("anotherpage.aspx");
    }
    

    more info

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-02-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-10-17
      • 1970-01-01
      • 2013-05-12
      • 2012-03-31
      相关资源
      最近更新 更多