假设我正在运行一个网站(在IIS7上)侦听端口8000上的请求。现在这个网站只包含静态内容(即html文件)。所以当我浏览到URL http://localhost:8000时,浏览器显示网站的默认html页面。但是如果我还运行一个自主托管的WCF服务来监听URL http://localhost:8000(此WCF服务不由IIS托管)上的请求,则浏览器将显示有关WCF服务的数据:IIS7和WCF混淆
a)Don'对TCP/IP知之甚多,但据我所知,一次只有一个应用程序可以侦听特定的IP和端口,但在这里网站和WCF服务都可以监听相同的IP地址和端口号。这怎么可能?
b)当我在浏览器中输入本地url(比如http://localhost:8000)时,浏览器是否不通过IIS请求页面?如果是这样,那为什么它会显示WCF服务的详细信息,而不是网站的默认页面?毕竟,这个WCF服务甚至不被IIS托管。
谢谢
A - 但为什么Http.Sys将请求传递给WCF服务而不是IIS? B - 即使是“本地”浏览器(因此和IIS一样驻留在同一台机器上)并不直接“联系”IIS,而是通过Http.sys间接地“联系” – user437291 2010-12-09 22:14:55