0

我目前在 XP Pro SP3 上使用 Visual Studio 2008。

针对http://localhost/进行开发,包括调试在内的所有内容都可以正常工作。

我的机器上需要第二个网站。IIS 5.1 一次只允许一个网站,所以我使用 JetStat XP Pro IIS Admin 工具创建了第二个网站。这通过停止默认网站并启动另一个来运行。

我已将新网站名称添加到 Hosts 文件中并映射到 127.0.0.1。

可以通过此地址访问网站http://NewHostname/VirtualDirectoryName

无需调试即可启动项目(Web 应用程序和网站)。

但是,当我尝试调试时出现错误:“无法在 Web 服务器上开始调试。与 Web 服务器通信时发生身份验证错误。”

在 IIS 中启用了集成身份验证。

我已经看过很多文档,其中包含许多针对“无法在 Web 服务器上开始调试”错误的修复程序,但对于我的问题来说,它们似乎都是巨大的矫枉过正,毕竟,只要我不在这个不同的主机名上进行调试,调试工作就可以正常工作. 他们谈论如果即使使用http://localhost/调试也根本不起作用,我会做的事情。

有没有一个地方我可以添加这个新的主机名,以便允许 VS 调试?我需要在某处更改权限吗?我觉得应该有一个我只是忽略的非常简单的解决方案。

4

3 回答 3

2

帮自己一个忙,下载 IIS Admin .NET。

这个方便的小工具允许您在您的网站之间切换 - 每个网站在激活时都将成为 localhost,并且至关重要的是,让您摆脱这种调试崩溃。

http://www.codeplex.com/iisadmin

于 2010-01-08T12:36:04.760 回答
2

您确实必须将主机名添加到注册表中的值中。但我不记得在哪里。

既然一次只能运行一个网站,为什么不让它们都以“localhost”的形式运行呢?这样您就不必更改任何烦人的注册表设置,但您的应用程序仍然可以在各个 IIS 网站中运行。

于 2010-01-08T12:41:12.757 回答
2

这是问题的描述:http: //blogs.msdn.com/webdevtools/archive/2008/08/13/debugging-a-website-with-a-host-header.aspx

这是推荐的注册表解决方法:http: //support.microsoft.com/kb/896861

于 2010-01-08T13:26:42.883 回答