【发布时间】:2009-05-16 17:36:43
【问题描述】:
我正在尝试开发一个包含多个子域的 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.ToString() 得到http://localhost:1660/; abc 没了?!
我不知道为什么主机文件会这样工作,但是我可以使用其他方法将子域导入本地 Web 应用程序吗?谢谢大家。
请注意,我只使用内置的 asp.net 开发服务器,而不是完整的 iis 服务器。 (本周末我无法访问完整的 IIS,但我仍然想知道这是否有帮助。)
【问题讨论】:
-
我认为这可能是使用内置网络服务器的一个因素。我不相信这会发生在一般的 IIS 服务器上。 (如果您运行的是 XP,您确实拥有它;您只需将您的网站设置为虚拟应用程序)。