在了解Web Deploy时,我遇到了一些关于http:// +:80和http:// *:80的netsh.exe命令。那是什么意思?
答案 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处理。