我的解决方案是:
1,查看了C:\WINDOWS\system32\drivers\etc目录下的Hosts文件,确认里面有127.0.0.1
我这里没有这行.
于是我只有用手动改调试窗口的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
其次,可能是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。
注:其实出现端口号不一致的问题,如果想要web程序跑起来还是没有问题的,那就是不采用随机端口的方式,在VS2005里面的“网站”–>“启动选项”–>“启动选项”,找到“服务器”,然后选中“使用自定义服务器”,在“基URL”中填上web程序的虚拟路径即可,一般就是::http://机器名(或你本机的IP地址)/web程序别名
解决方法:
首先,检查C:\WINDOWS\system32\drivers\etc目录下的Hosts文件,确认里面有127.0.0.1
其次,可能是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。
1、打开NOD32的主界面,并切换到高级模式。
2、点击菜单“设置”里的“高级设置”。
3、选到树状菜单的“Web 访问保护 -> HTTP”上,把“启用HTTP检查”关闭即可。
据说在webconfig 里也能设 这个我就不会了,如有高手路过,还请指点一下。
还有一种方法就是用记事本打开你的*.sln文件 查找 port 你会找到它,然后手动修改它,应该也可以的吧。(呵呵,这个我没试)