链接:https://www.tekcent.com/articles/2013/a-better-canonical-domain-name-rule-for-iis/
作者声称The default Canonical Domain Name rule in IIS doesn't work very well. The generated rule doesn't work across different sub domains
。
为了测试这个我创建了2个网站-
Website 1有2个绑定:xx1.mydomain.com
; xx2.mydomain.com
Website 2有2个绑定:一个月三个月
然后,我添加了规范域名规则,使他们的请求得到重定向到第二个网址。
在浏览器中输入xx1.mydomain.com
将转到xx2.mydomain.com
在浏览器中输入yy1.mydomain.com
将转到yy2.mydomain.com
这和预期的一样。作者提到了什么--生成的规则不能跨不同的子域工作?
1条答案
按热度按时间rkue9o1l1#
我看了一下你提供的链接,我可以和你分享我的理解,希望能对你的困惑有所帮助。
作者的网站有多个绑定,他可以通过
localhost
、staging.tekcent.com
、tekcent.com
等作为不同阶段(localhost、dev、staging和production)的URL中的主机名来访问网站;而规范域名仅在生产中需要,因此作者只希望将来自tekcent.com
的请求重定向到生产站点。任何不是
www.tekcent.com
的请求都会匹配成功,包括来自localhost
或staging.*
的请求,然后重定向,但这不是作者想要的效果,所以作者对规则做了一些修改。你的测试和他的观点并不矛盾,默认的规范域名规则是有效的。如果你的网站1在localhost上运行,它也可以通过
localhost
访问。根据默认规则,当你访问localhost
时,它也会被带到xx2.mydomain.com
。如果你不想在从localhost
访问时遵循这个规则,则需要更改规则以检查xx1.mydomain.com
上的精确匹配。