(您可以直接跳到问题,但上下文在背景部分。)
技术背景
- 视窗 8
- IIS 7
背景:
和其他几个人一样,我使用 IIS,有时我需要设置站点的本地版本。现在,在设置不同的站点时,为它们分配不同的端口是很常见的,这样它们就不会重叠。因此,您可以将站点 A 放在端口 80,将站点 B 放在端口 81,依此类推。
现在,我想设置绑定,以便能够在端口 80 下拥有多个站点,并且通过标头主机区别,我可以同时为这些站点提供有意义的 URL。
执行此操作的一个选项是向主机文件添加条目,例如:
127.0.0.1 siteA.com
127.0.0.1 siteB.com
有了这个,您应该能够浏览到 siteA.com 或 siteB.com 并在本地运行。
但我想更进一步,因为 localhost 已经设置为匹配 127.0.0.1,所以:
问题:
我已将 IIS 绑定设置为:
site host header port
siteA siteA.localhost 80
siteB siteB.localhost 80
我希望我能够浏览到http://siteA.localhost/和http://siteB.localhost/并获取我的站点。
但是,当我浏览时,我的请求似乎从未到达 IIS,并且地址未解析。
为什么这不起作用?
更新:
我选择了 chue x 的答案,因为他解释了为什么这不起作用。对于那些可能遵循我相同路径的人,您可能会想“好吧,我可以只添加*.localhost
主机文件并且应该完成。” 甚至切换到*.local
或*.localdev.com
或类似的东西。
但是,这不起作用:Windows 主机文件中的通配符
正如 chue x 指出的那样,我们现在唯一的方法是继续向主机文件添加条目,或者,他们如何在链接的问题中解释,使用另一个 DNS 服务器。