none
快救我:安装补丁后,发生“无法在Web服务器上启动调试,与Web服务器通信时出现身份验证错误”! RRS feed

  • 问题

  •  

    被这个问题困扰一个月了。这是微软的sp1上的bug所致。

    问题描述:
    我使用的是修改hosts,模拟真实网址来进行调试的。具体是这样的:我修改hosts文件,把某个域名,如www.163.com映射为127.0.0.1,然后在IIS信息管理器中,创建一个网站,该网站的主机头就是指向www.163.com

    这样,在浏览器中输入www.163.com时,就不会再去访问网易的主页了,而是访问我本地的网站了。

    然后我用vs2008中文版,打开我的网站项目,把调试启动路径设置为www.163.com,于是我就可以去用www.163.com调试我的程序了。

    如果我不使用hosts的模拟真实网址的方法,直接按F5进行调试,那么vs2008就会自动生成类似于http://localhost:2323/这种网址来进行调试,这种网址不是我所需要的。

    下面描述问题的发生情况:

    使用www.163.com调试我的网站程序,在vs2008未装sp1前,按F5可以调试。我以前用vs2005的时候,如果vs2005未装vs2005的sp1,也能调试,但是不论是vs2005还是vs2008,只要一装上相应的sp1补丁,就不能再使用这种模拟真实网址的方式来进行调试了,会报如下错误:“无法在Web服务器上启动调试,与Web服务器通信时出现身份验证错误”。

     

    注意事项:

    1)请一定要注意,不论vs2005,还是vs2008未装sp1之是可以调试的!

    2)我的调试网址是模拟真实网址,如使用www.163.com去调试,而不是用系统生成的带有端口号的网址去调试,这点是最大的区别,现在网络上的解决方法都不适合于我这种问题的解决方法。

         另外,vs2005,或vs2008,在装上sp1后,一样还能使用端口号的网址去调试!

    3)网络上的解决方法:如aspnet_regiis.exe -i, 如启用windows集成,如设置目录的角色可访问性,象什么“Network Service”等等设置可访问性,这些方法通通不适合于解决本问题,因为我的问题是建立在模拟真实网址的基础之上的!

     

     

    最后,感激不尽,请各位高人帮我解决一下,非常感谢。最后请不要劝我放弃使用模拟真实网址去进行调试的方法。因为这并没有解决问题。而且我的项目已经箭在弦上,不好再改了。

    2008年10月22日 7:26

答案

全部回复

  •  

    我是楼主,我用的操作系统是windows2003 sp2,
    项目使用环境是vs2008 sp1 + sql2008 sp1

     

    我所描述的问题bug应该是使用hosts模拟真实网址调试的通病。

     

    但是这个通病bug,自vs2005 sp1后一直到现在也还没有被解决。

     

    因为vs2005 sp1打上补丁后,也会发生这个问题,到现在vs2008了,还是这样。微软有必要重视此bug的修改。

    2008年10月22日 7:53
  • 请参考http://msdn.microsoft.com/zh-cn/library/dwesw3ee.aspx中"要检查的内容"一节第5小点~将www.163.com 添加到受信任站点列表中~看是否能解决问题~

    2008年10月30日 5:02
    版主
  • 你好!
       1,你试试将你的站点的加入IE的受信任站点
       2,要是不行,重新注册ASP.NET,输入如下命令:
    systemroot\Microsoft.NET\Framework\ versionNumber \aspnet_regiis -i
    2008年10月30日 6:07
    版主