【发布时间】:2012-05-22 02:01:29
【问题描述】:
我有一个 ASP.net Web 应用程序,它具有不同的功能和数据,具体取决于它登录的 URL。
在已部署的环境中一切正常,因为我可以在 IIS 中绑定多个主机,然后 Web 应用程序可以查询 request.URL 以找出要使用的代码和数据。
例如。 http://foo.bar.com 将运行与 http://test.bar.com 不同的代码
问题出现在我的开发机器上的 VS2010 调试中。 我可以在配置中硬编码默认站点 url,但需要同时运行多个。 例如 site1.localhost、site2.localhost、site3.localhost ....
我尝试在 system32/drivers/etc 中编辑我的主机文件 例如
127.0.0.1 localhost site1.localhost site2.localhost
但如果我在代码中点击 site1.localhost,request.Url 始终是 localhost
无论如何我可以解决这个问题吗?
【问题讨论】:
-
您是否尝试过多个主机文件行...
-
您是否托管在 IIS 中?您是否将站点绑定到 site1.localhost 和 site2.localhost?
-
不,这是在我的本地机器上运行,在 Visual Studio 中运行调试,我想我也可以尝试为同一目录托管 IIS 并构建站点并像这样设置 msdn.microsoft.com/en-us/library/a1zz9df4.aspx 进行测试,但我想在调试中运行
-
您可以通过附加进程来调试在 IIS 上运行的站点 - 抱歉,调试 -> 附加进程 --> w3wp(www 工作进程)是您想要的 - 通常有一些关于哪个站点的描述每个进程都在服务
-
希望有一个更简单的主机解决方案,重建,重新启动 IIS,然后将调试附加到 IIS 进程非常不友好
标签: c# asp.net-mvc windows