61

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

4

2 回答 2

58

URLPrefix Strings (Windows)中引用:

当 UrlPrefix 的主机元素由单个加号 (+) 组成时,UrlPrefix 匹配其方案、端口和 relativeURI 元素上下文中所有可能的主机名,并属于强通配符类别。

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

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

于 2011-01-04T21:00:38.340 回答
17

简单来说,“*”处理没有其他人处理的请求,“+”处理请求,即使它由任何其他处理程序处理。

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

http://*:8080/:在端口 8080 上接收所有其他 HttpListener 尚未处理的 HTTP 请求。

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

于 2018-08-31T06:51:32.683 回答