IIS 服务器 (Windows 2016)

IIS 服务器 (Windows 2016)

我正在使用 Enom.com 的 DNS 服务器来管理多个域的 DNS 设置。我无法理解如何正确设置 DNS,以便所有 http 请求都能解析到裸域而不会导致example.com redirected you too many times错误。

因此,无论以下任何一项如何:

http://www.example.com
http://foo.example.com
http://*.example.com

DNS 记录应始终重定向到http://example.com

IIS 服务器 (Windows 2016)

此外,我不希望为每个域设置带有规范域名规则的 IIS URL 重写。我更倾向于让 DNS 记录简单地将所有内容解析回裸域。

IIS 主机记录

我的服务器严重依赖主机头记录来将传入的请求正确解析到正确的网站。换句话说,几个域的 A 记录指向我服务器上的同一个 IP 地址。

当前 DNS 记录配置(使用 Enom)

Host Name       Record Type     Address
www             URL Redirect    example.com
@ (none)        A (Address)     1.2.3.4
* (all others)  URL Redirect    example.com

URL 重定向记录是 Enom 提供的一个特殊记录。从Enom Host Records 帮助页面

URL 重定向不是原生 DNS 记录类型。为主机名指定 URL 重定向会创建一个底层 A 记录,该记录会将该名称定向到我们的 URL 转发服务器。然后,这些服务器会执行 HTTP 301 重定向到您在地址字段中指定的 URL。您可以仅指定要转到的域名,或指定特定文件的完整路径。

问题摘要

如何设置 DNS 记录,以便始终将域的所有变体发送到裸域,而无需使用 IIS URL 重写规则?

答案1

DNS 无法重定向用户。您必须配置您的 Web 服务器(本例中为 iis)以将输入 www.domain.tld 的用户重定向 (301) 到 domain.tld。DNS 仅解析名称...您可以设置一个“重定向虚拟主机”,它是一个万能的重定向用户到您的主站点(谷歌搜索“通配符子域”)。我已经使用 apache 完成了此操作(除了反过来,我想要 www...我过时了)

相关内容