【问题标题】:Domain name without "www" results in 404 or "Under Construction" page in IIS 7.5在 IIS 7.5 中,没有“www”的域名会导致 404 或“建设中”页面
【发布时间】:2015-02-17 13:04:42
【问题描述】:

我有两个托管在 IIS 7.5 中的网站,它们使用 SSL 并绑定到两个不同的内部 IP 地址。当我在没有“www”的情况下导航到其中任何一个(例如http://example.com)时,站点 A 会出现 404 错误,站点 B 会出现“正在建设”页面。当我使用不带“www”的 URL 访问浏览器在服务器之外,站点 B 显示 IIS 7 起始页。

我尝试了多种DNS记录和IIS重写规则的配置,仍然无法理清。我可以 ping 两个域名(最初我无法在没有“www”的情况下 ping 一个站点,并且会出现 DNS 错误)。现在当我查看nslookup 时,我可以看到www 和非www 具有相同的IP 地址。

似乎对非 www 域名的请求正在进入 IIS,因为它返回 404 页面或 IIS 7 启动/构建页面。 如何正确地将非 www 请求重定向到 www? IIS 中的规范域名规则不起作用。

【问题讨论】:

    标签: iis dns iis-7.5 windows-server-2008


    【解决方案1】:

    听起来您仍然有一些 dns 问题需要解决。如果您发布您的 IP 地址、dns 条目和网站绑定,我将能够帮助您解决问题。但要回答您关于将非 www 请求正确重定向到 www 的其他问题,我将使用如下重写规则:

    <rule name="Redirect domain.com to www" patternSyntax="Wildcard" stopProcessing="true">
        <match url="*" />
        <conditions>
            <add input="{HTTP_HOST}" pattern="domain.com" />
        </conditions>
        <action type="Redirect" url="http://www.domain.com/{R:0}" />
    </rule>
    

    【讨论】:

    • 我要到星期一才能访问 DNS 条目。我尝试了重定向规则,以及一个类似的规则来检查它与“www”模式匹配的位置,但都不起作用。如果您有空,我将在下周的聊天中分享更多信息。我们为每个域都有一个唯一的内部 IP 地址。给定站点的绑定使用具有不同端口(80、443)的相同 IP 地址:站点 A 是 xxx.xx.x.8,站点 B 是 xxx.xx.x.15。我认为这些是 DNS 问题是正确的,但我会在星期一看到。 nslookup 显示两个域使用相同的服务器和服务器 IP,但名称具有不同的地址。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-01-22
    • 1970-01-01
    • 2013-07-31
    • 2012-03-30
    • 1970-01-01
    • 2011-06-23
    • 1970-01-01
    相关资源
    最近更新 更多