我在我的服务器 (Windows Server 2008 R2) 上托管公共域的 DNS 区域。我的问题是,如果用户输入任何不可用的子域名,则可以看到我的 IIS 默认页面。
例如 :
blabla.mydomain.com or xxx.mydomain.com
可以看到我的IIS默认页面。
如果输入的子域名不可用,我想将用户重定向到主域名。我该如何处理?我应该配置我的 DNS 区域或 IIS 吗?
答案1
发生的事情是这样的:
- 客户端在 DNS 中查找 mydomain.com 的随机子域名(random.mydomain.com)
- 您有一个通配符 DNS 记录,可以将该子域解析为您的主域 (mydomain.com) 的 IP 地址
- 客户端的浏览器通过该 IP 地址连接到您的服务器,并发送 random.mydomain.com 作为 HTTP 连接的主机标头
- 由于您没有与 random.mydomain.com 匹配的绑定,因此 IIS 会回退到与 mydomain.com 的 IP 地址的绑定,但没有主机标头。目前,这显然与您的默认 IIS 站点与内置的“欢迎”页面相匹配。
您需要在 IIS 中为您的主域添加一个包含 IP 地址但不包含主机标头的站点绑定,并停止默认站点(或删除等效绑定),以便使用不匹配的主机标头的访问者能够获得来自您主站点的内容。