IIS7中的通配符子域。 是否有可能使它们像Apache一样?
这可能配置IIS7来实现像Apache一样的通配符域相同的功能吗? 我对基于URL中使用的子域用户的ASP.NET Web应用程序中的用户进行路由感兴趣。
类似这样描述:
http://steinsoft.net/index.php?site=programming/articles/apachewildcarddomain
谢谢
答案是否,IIS7(仍然)不支持通配符主机名(请参阅此)。 如果您想在一个网站上为多个域提供服务,现在唯一的解决方法就是使用专用IP,并使用支持通配符的DNS进行。
2013更新
为了完整性,IIS8还没有这个功能。
2016更新
最后,Windows 2016中的IIS 10支持通配符子域。
IIS是否支持通配符主机头? 我可以捕获并重定向* .mydomain.com到一个网站吗?
答案是是/否。 是的,因为您可以将* .mydomain.com重定向到一个网站。 不,因为魔法是在DNS中,而不是IIS。
这是你如何做到的:
在IIS MMC上,配置一个没有主机头的网站,然后为该网站分配一个IP地址。 (如果你有一个IP地址在框中,那么你可以跳过这个)。 有了这个,网站将绑定到特定的IP并且将监听发送到IP的所有HTTP请求,并且您完成了:)
下一步是确保您的名称解析适用于通配符查询并使用正确的IP地址回复。 如果您使用Microsoft DNS服务,它不会允许您创建'*'A记录(假设您已经在DNS MMC中创建了域区域),则需要执行以下操作:
%windir%system32dns
mydomain.com.dns,用记事本打开它
* A IP.IP.IP.IP
请注意,通过这样做,所有*都会响应您之前配置的IP。 如abc.mydomain.com,www.mydomain.com,K2k.mydomain.com等。
要验证它是否正常工作,请尝试ping实用程序ping (insert anything here).mydomain.com
并且您应该从IP.IP.IP.IP
然后尝试浏览http://(在此插入任何内容).mydomain.com /,您应该获得您配置的相同网页。
资源
您不能在Microsoft的DNS中创建通配符(*)记录,但可以创建通配符CNAME
。 如果你所要做的只是将所有子域指向一个特定的IP地址,这就行得通了。 例如,如果您有www.mydomain.com
的A记录,则可以为*.mydomain.com
添加CNAME
记录,并指向www.mydomain.com
。 请求标头中的主机名仍然是子域名,因此您的网络应用程序应该能够抓住并处理它,如果你想。
上一篇: Wildcard subdomains in IIS7. Is it possible to make them like it is in Apache?
下一篇: Is there a way to force Facebook to show the og:image on shared links?