http:// *:80和http:// +:80之间有什么区别?

时间:2011-01-04 20:35:19

标签: http netsh webdeploy

在了解Web Deploy时,我遇到了一些关于http:// +:80和http:// *:80的netsh.exe命令。那是什么意思?

2 个答案:

答案 0 :(得分:53)

引自URLPrefix Strings (Windows)

  

当UrlPrefix的host元素由单个加号(+)组成时,UrlPrefix会在其scheme,port和relativeURI元素的上下文中匹配所有可能的主机名,并且属于强通配符类别。

     

当星号(*)显示为主机元素时,UrlPrefix将进入弱通配符类别。这种UrlPrefix匹配与指定方案关联的任何主机名,端口和relativeURI尚未与强通配符,显式或IP绑定的弱通配符UrlPrefix匹配。   在某些情况下,此主机规范可用作默认的catch-all,或者可用于指定URL命名空间的大部分,而无需使用许多UrlPrefix。

:80之后显示您正在访问通配符字符串匹配的URL的端口。 80是用于访问普通网页的最常用(如果不是最常见)端口之一。

答案 1 :(得分:6)

简单地说,“ *” 处理请求(如果没有其他人处理),而“ +” 处理请求,即使该请求已由其他处理程序处理。 / p>

一个很好的例子,取自https://stackoverflow.com/a/9459679/6375269

  

http:// *:8080 /:在端口8080上接收所有非HTTP请求   已经被其他HttpListener处理。

     

http://+:8080/:在端口8080上接收所有HTTP请求,即使它们是   已经由另一个HttpListener处理。