您的位置:首页 > 其它

VS2005调试时无法显示网页的解决方法

2012-04-11 11:19 447 查看
我的解决方案是:

  1,查看了C:\WINDOWS\system32\drivers\etc目录下的Hosts文件,确认里面有127.0.0.1 localhost 行,很多人说还有::1 localhost,说是把这行去掉或把这行的localhost去掉就可以,
我这里没有这行.
于是我只有用手动改调试窗口的localhost为127.0.0.1,OK了,再不出现"无法显示".原因不明.
而且我在寻找自动更改设置,使每次调试都以127.0.0.1:端口进行调试的方法.
-------------------
以下是其他人的解决方案:
这两天在用VS2005调试正在做的博后网站的时候,突然页面不能正常显示了,IE7老是显示着“此程序无法显示网页”的页面,前几天都还没有出现这样的问题啊,而且最巧合的是学校和家里的的机子都出现了相同的问题,而更奇怪的是两个问题最后的原因还不是相同的,这种小概率事件都发生了,可以说我是中头彩了。好了,废话不多说,下面我就来总结下我遇到问题的具体症状以及解决方法,当然最感谢的还是百度和两位网络上的高人。
症状一:

  
IE地址栏里面显示的端口号和桌面任务栏右下角“ASP.NET Development Server”的端口不一致,而把IE地址栏的端口号改成“ASP.NET Development Server”显示的端口号,结果网页就能出来。
解决方法:引用原文如下:“是否安装了NOD32 3.0以上版本?或者还有其它什么防火墙类软件?如果你是安装NOD32 3.0的,按照以下方法做:依次进入NOD32的高级设置(F5),Web访问保护,HTTP,Web浏览器,会看到一个程序列表你的devenv.exe应该在其中,双击前面的勾(相当于去掉选中状态),确定退出,停止一切运行的ASP.NET
Development Server,在VS中打开并重新编译运行你的Web程序”。
个人实践:百度到这篇博文我是欣喜若狂,我安装的正是ESET Smart Security(NOD32 3.0的互联网套装)!按照博文的方法一一执行,果然有效,调试一切恢复正常。
症状二:

  
IE地址栏里面显示的端口号和桌面任务栏右下角"ASP.NET Development Server”的端口是一致的,而把IE地址栏的localhost改成本机IP地址127.0.0.1,结果网页就能出来。
解决方法
首先,检查C:\WINDOWS\system32\drivers\etc目录下的Hosts文件,确认里面有127.0.0.1 localhost 行,说明Hosts配置应该是正确的。
其次,可能是XP hosts文件不起作用了,按照网上的普遍方法,修改注册表的内容:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Servic
es\Tcpip\Parameters里面的"DataBasePath"类型从"REG_SZ"修改为"REG_EXPAND_SZ"。可是我的注册表内容本身就是REG_EXPAND_SZ,所以这条对我无效。
后来,看到一个人的博文,他说到可能是:IPV6抛出非数字端口异常。在任务栏中双击本地连接,在属性常规中检查自己机器网络配置,看看安装了IPV6协议没有,如果有就卸载掉IPV6协议即可,重新启动调试VS,便可正常使用。Sun Developer Network上问题地址:http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=5042453
  个人实践:在家里调试又遇到同样的问题,我本来以为跟学校的问题是一样的,但是试过之后发现不行,原因不是相同的,一度郁闷,最后在另一个高人的博客中找到了解决方法,如法炮制,果然问题解决!
------------------------------------------------------------
这篇也提供了解决方案.http://www.cnblogs.com/aprillee/archive/2009/03/23/1274874.html
--------------------------------------------------------------
还有这一篇也很全:
外在表现就是在调试Web应用程序时,浏览器(IE)出现“网页无法显示”的情况。仔细观察会发现地址栏内的端口号与ASP.NET Development Server显示的端口号不一致。

如果你确信你的程序没有错误的话,通常可以用以下方法解决:

1.防火墙的原因。如果你是安装的事NOD32 3.0及其以上版本,按照以下方法做:

依次进入NOD32的高级设置(F5),Web访问保护,HTTP,Web浏览器,会看到一个程序列表你的devenv.exe应该在其中,双击前面的勾(相当于去掉选中状态),确定退出,停止一切运行的ASP.NET Development Server,在VS中打开并重新编译运行你的Web程序。

注:其实出现端口号不一致的问题,如果想要web程序跑起来还是没有问题的,那就是不采用随机端口的方式,在VS2005里面的“网站”–>“启动选项”–>“启动选项”,找到“服务器”,然后选中“使用自定义服务器”,在“基URL”中填上web程序的虚拟路径即可,一般就是::http://机器名(或你本机的IP地址)/web程序别名

2.IE地址栏里面显示的端口号和桌面任务栏右下角"ASP.NET Development Server”的端口是一致的,而把IE地址栏的localhost改成本机IP地址127.0.0.1,结果网页就能出来。

解决方法:

首先,检查C:\WINDOWS\system32\drivers\etc目录下的Hosts文件,确认里面有127.0.0.1 localhost 行,说明Hosts配置应该是正确的。

其次,可能是XP hosts文件不起作用了,按照网上的普遍方法,修改注册表的内容:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Servic es\Tcpip\Parameters里面的"DataBasePath"类型从"REG_SZ"修改为"REG_EXPAND_SZ"。

3.在VS2008里点“调试”后。ASP.NET Development Server的端口比调试时打开的浏览器上的端口要大2,造成每次需要调试都要手动改浏览器的端口号。如下图:

解决方法一

为 ASP.NET Development Server 指定端口1、在解决方案资源管理器中,单击应用程序的名称。2、在“属性”窗格中,单击“使用动态端口”旁的下箭头,然后从下拉列表选择“False”。这会允许对“端口号”属性进行编辑。3、在“属性”窗格中,单击“端口号”旁的文本框,然后键入一个端口号。4、在“属性”窗格之外单击。此操作会保存属性设置。每当在 Visual Web Developer 中运行文件系统网站时,ASP.NET Development Server 都会侦听指定的端口。

解决方法二

为网站指定 Web 服务器

1、在“解决方案资源管理器”中,要为哪个网站指定 Web 服务器,就右击该网站的名称,然后单击“属性页”。

2、在“属性页”对话框中,单击“启动选项”选项卡。

3、在“服务器”下,单击“使用自定义服务器”。

4、在“基 URL”框中,键入 Visual Web Developer 在运行当前网站时应启动的 URL。

解决方法三

经检查,此问题是由杀毒软件引起的,我用的是NOD32(ESS或EAV),可以关闭 NOD32里的相关功能解决此问题。

1、打开NOD32的主界面,并切换到高级模式。

2、点击菜单“设置”里的“高级设置”。

3、选到树状菜单的“Web 访问保护 -> HTTP”上,把“启用HTTP检查”关闭即可。

据说在webconfig 里也能设 这个我就不会了,如有高手路过,还请指点一下。

还有一种方法就是用记事本打开你的*.sln文件 查找 port 你会找到它,然后手动修改它,应该也可以的吧。(呵呵,这个我没试)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: