IIS,IE无法识别网页协议

时间:2012-07-03 18:09:41

标签: asp.net iis browser web-deployment

我在IIS中设置了网站,并在网站下添加了网络应用程序。我将现有的.Net Web应用程序文件(aspx文件格式)发布并复制到Web应用程序文件夹中。

当我尝试从IE浏览网页时,它说

"Protocol Type: localhost" 
"Windows does not recognize this Protocol."

当我尝试从Firefox浏览时,它说

"The address wasn't understood"
"Firefox doesn't know how to open this address, because the protocol (localhost) isn't associated with any program."

但是当我转到url并从firefox点击回车(刷新不起作用)时,该页面正常工作并显示内容。

任何人都可以指出解决这个问题的方向吗?

3 个答案:

答案 0 :(得分:3)

浏览器在URL的开头查看打开特定链接时应该使用的协议(如果协议不是他们理解的,大多数都具有执行其他程序的功能)。

通常,协议类似于“http:”,“ftp:”,“file:”,“irc:”,等等。

该协议由冒号分隔。您使用localhost:80 / ...会让浏览器误以为您尝试使用的协议是“localhost”,这是不正确的。如果您要保留端口号,浏览器可能会假设HTTP使用默认设置(端口80)并且它可以正常工作,因为如果未指定协议,大多数浏览器将采用HTTP。

答案 1 :(得分:1)

“localhost”不是协议,它是服务器的名称。你的问题是冒号可以提供两个函数是一个URL:它可以将协议与服务器分开,它可以将服务器与端口分开。您通常可以不使用协议,我们认为它是“http”。如果您的示例中有一个端口号 - “80” - 您必须指定协议,否则我们会混淆协议的服务器名称。

在这个例子中,而不是只写

localhost:80/AdministrationWebPage/etc

http://localhost:80/AdministrationWebPage/etc

如果Firefox发现它,那么对Firefox有利,但没有“http://”,这在技术上并不正确。

即,URL的一般格式为:

protocol://server:port/page?querystring

如果缺少部分,浏览器和服务器将填写默认值。但规则之中是第一个冒号应该标记协议的结束,所以:

localhost:80/AdminsitrationWebPage/etc

看起来像protocol = localhost,服务器名称= 80,我认为这不是你想要的。

答案 2 :(得分:0)

在安装apache webserver并测试htdocs文件夹中的testing.php文件之后,我没有插入正斜杠,也得到了上面的消息

我解决它的方法只是插入正斜杠,如下所示: 本地主机:8000 / testing.php

并且testing.php文件的内容显示