我正在尝试开发一个具有多个子域的 asp.net 站点。一般来说,我是网站新手,尤其是 asp.net。但是,通配符子域似乎已通过 dns 条目和 Web 服务器配置的组合正确设置——这不会在我的开发机器上发生。因此,我在我的 Windows hosts 文件中手动插入条目:
127.0.0.1 localhost
127.0.0.1 abc.localhost
127.0.0.1 xyz.localhost
但是,当我尝试查询 Request.Url 属性时,看不到任何子域。例如,如果我在浏览器中点击 http://abc.localhost:1660/
我会从 Request.Uri 得到
; http://localhost:1660/
.ToString()abc
刚刚消失了?!
我不知道为什么 hosts 文件会这样工作,但是我可以使用任何其他方法将子域获取到我的本地 Web 应用程序中吗?谢谢大家。
请注意,我只使用内置的 asp.net 开发服务器,而不是完整的 iis 服务器。 (这个周末我无法访问完整的 IIS,但我仍然想知道这是否有帮助。)
最佳答案
不知道 header ,但我使用的一个鲜为人知的技巧是所有 127.* 地址都是本地主机地址,而不仅仅是 127.0.0.1。你实际上可以运行一个监听 127.0.0.1 端口 80 的服务器,另一个监听 127.0.0.2 端口 80 的网络服务器实例。那么你将命名为 127.0.0.1 localhost,127.0.0.2 可以是 abc.localhost(或 abc.mydomain .com,这样您就可以针对本地网络服务器测试真实的实时 URL)等。
关于asp.net - 如何在开发机器上测试子域? abc.localhost,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/872868/