贝网博客

我的分类
流水记事
源码下载
Asp.net
其它
数据库
Javascript
.Net技术
我的相册
友情链接
博客园
CSDN博客
Start0
最新回复
嗷嗷的cCC
fasdfasdf
[:..
lz这个东西好厉害,我..
哈哈,好照片
不错,以前一直用黄色..
终于找到支持ff的修正..
终于找到支持ff的修正..
新鲜性
看看,试试,好不好使。
分类 =》.Net技术
VS2008下,无法进入调试状态,也没有任何错误提示的解决
发表于:2010-10-25 15:11:25
更新于:2011-11-18 10:29:18

今天打开一个同事交接的项目,结果发现,按F5,或者选择菜单上的“进入调试”,都只是弹出IE窗口,而无法进入到调试状态
而别的项目打开,调试都正常

经过比对,发现是Web.config里多了一行location声明:
<location path="." allowOverride="false" inheritInChildApplications="false">
  <system.web>
...........
</system.web>
</location>

把这个location删除,项目就能正常进入调试状态了,记录一下
Btw:
allowOverride属性为false时,表示location内的设置不允许子目录里的web.config覆盖(就是子目录的配置将无效)
inheritInChildApplications属性为false时,表示location内的设置,不应由子应用程序继承(实际上Web.config里不支持这个属性)

======================================================================

再记录一个以前碰到的不能调试的问题:
今天要用域名访问来测试程序,于是在C:\WINDOWS\system32\drivers\etc\hosts里添加了静态域名
并在IIS里新增了一下网站,为了让2个网站都能使用80端口,在新增的这个网站上配置了主机头为刚刚那个静态域名,
结果打开vs 2008 sp1,调试提示“无法在web服务器上启动调试。与web服务器通信时出现身份验证错误”。
先检查iis的网站属性配置的目录安全性里,已经勾选上了:集成身份验证

然后去网上搜索解决方案,先搜索百度,结果出现一堆无关答案,再搜索google,相关的答案全出来了,
看来还是google好啊,我的关键词是:无法在web服务器上启动调试。与web服务器通信时出现身份验证错误
你也可以搜索试试

下面是解决方案,我用的是第一个方案搞定的:
下面2个方法都试一下总有一个适合你。
方法 1: 禁用环回检查
请遵循以下步骤:1. 单击 开始 , 单击 运行 , 类型 regedit然后单击 确定 。
2. 中注册表编辑器, 找到并单击以下注册表项:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa
3. 右击 Lsa , 指向 新建 , 然后单击 DWORD 值 。
4. 类型 DisableLoopbackCheck然后按 Enter。
5. 右击 DisableLoopbackCheck , 然后单击 修改 。
6. 在 数值数据 框中, 键入 1然后单击 确定 。
7. 退出注册表编辑器即可。

方法 2: 指定主机名
要指定主机名, 映射到环回地址并可连接到 Web 站点上, 请按照下列步骤:1. 单击 开始 , 单击 运行 , 类型 regedit然后单击 确定 。
2. 中注册表编辑器, 找到并单击以下注册表项:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\MSV1_0
3. 右击 MSV1_0 , 指向 新建 , 然后再单击 多字符串值 。
4. 类型 BackConnectionHostNames然后按 Enter。
5. 右击 BackConnectionHostNames , 然后单击 修改 。
6. 在 数值数据 框中, 键入主机名(如:127.0.0.1)或主机名为站点位于本地计算机, 然后单击 确定 。
7. 退出注册表编辑器, 并重新启动 IISAdmin 服务。

发表评论
名称(*):
邮箱:
正文:

©2008 Beinet.cn 版权所有