使用 netsh http 查询和配置 HTTP.sys 设置和参数。
提示
如果在运行 Windows Server 或 Windows 10 的计算机上使用 Windows PowerShell,请键入“netsh”并按 Enter 键。 在 netsh 提示符下键入 http,然后按 Enter 获取 netsh http 提示符。
netsh http>
可用的 netsh http 命令包括:
- 添加 iplisten
- 添加 sslcert
- 添加超时
- 添加 urlacl
- 删除缓存
- 删除 iplisten
- 删除 sslcert
- 删除超时
- 删除 urlacl
- 刷新日志缓冲区
- 显示缓存状态
- 显示 iplisten
- 显示服务状态
- 显示 sslcert
- 显示超时
- 显示 urlacl
添加 iplisten
向 IP 侦听列表添加新的 IP 地址(不包括端口号)。
语法
add iplisten [ ipaddress= ] IPAddress
参数
参数 | 说明 | 要求 |
---|---|---|
IP 地址 | 要添加到 IP 侦听列表的 IPv4 或 IPv6 地址。 IP 侦听列表用于确定 HTTP 服务绑定到的地址列表的范围。 “0.0.0.0”表示任何 IPv4 地址,“::”表示任何 IPv6 地址。 | 必须 |
示例
下面是 add iplisten 命令的四个示例。
- 添加 iplisten ipaddress=fe80::1
- 添加 iplisten ipaddress=1.1.1.1
- 添加 iplisten ipaddress=0.0.0.0
- 添加 iplisten ipaddress=::
添加 sslcert
为 IP 地址和端口添加新的 SSL 服务器证书绑定和相应的客户端证书策略。
语法
add sslcert [ ipport= ] IPAddress:port [ certhash= ] CertHash [ appid= ] GUID [ [ certstorename= ] CertStoreName [ verifyclientcertrevocation= ] enable | disable [verifyrevocationwithcachedclientcertonly= ] enable | disable [ usagecheck= ] enable | disable [ revocationfreshnesstime= ] U-Int [ urlretrievaltimeout= ] U-Int [sslctlidentifier= ] SSLCTIdentifier [ sslctlstorename= ] SLCtStoreName [ dsmapperusage= ] enable | disable [ clientcertnegotiation= ] enable | disable ] ]
参数
参数 | 说明 | 要求 |
---|---|---|
IP 端口 | 指定绑定的 IP 地址和端口。 冒号字符 (:) 用作 IP 地址和端口号之间的分隔符。 | 必须 |
certhash | 指定证书的 SHA 哈希。 此哈希长度为 20 个字节,并指定为十六进制字符串。 | 必须 |
appid | 指定用于标识所属应用程序的 GUID。 | 必须 |
certstorename | 指定证书的存储名称。 默认情况下为 MY。 证书必须存储在本地计算机上下文中。 | 可选 |
verifyclientcertrevocation | 指定客户端证书吊销的打开/关闭验证。 | 可选 |
verifyRevocationwithCachedClientCertOnly | 指定是启用还是禁用仅将缓存的客户端证书用于吊销检查。 | 可选 |
使用情况检查 | 指定是启用或禁用使用情况检查。 默认为启用。 | 可选 |
撤销新鲜时间 | 指定检查更新的证书吊销列表 (CRL) 的时间间隔(以秒为单位)。 如果此值为零,则仅当上一个 CRL 过期时才会更新新的 CRL。 | 可选 |
urlretrievaltimeout | 指定尝试检索远程 URL 的证书吊销列表后的超时间隔(以毫秒为单位)。 | 可选 |
sslctl标识符 | 指定可信任的证书颁发者的列表。 此列表可以是计算机信任的证书颁发者的子集。 | 可选 |
sslctlstorename | 指定存储 SslCtlIdentifier 的 LOCAL_MACHINE 下的证书存储名称。 | 可选 |
dsmapper用法 | 指定是启用还是禁用 DS 映射器。 默认为禁用。 | 可选 |
clientcertnegotiation | 指定是启用还是禁用证书协商。 默认为禁用。 | 可选 |
示例
下面是 add sslcert 命令的示例。
add sslcert ipport=1.1.1.1:443 certhash=0102030405060708090A0B0C0D0E0F1011121314 appid={00112233-4455-6677-8899-AABBCCDDEEFF}
添加超时
将全局超时添加到服务。
语法
add timeout [ timeouttype= ] IdleConnectionTimeout | HeaderWaitTimeout [ value=] U-Short
参数
参数 | 说明 |
---|---|
timeouttype | 设置的超时类型。 |
价值 | 超时值(以秒为单位)。 如果该值采用十六进制表示法,则添加前缀 0x。 |
示例
下面是 add timeout 命令的两个示例。
- 添加超时 TimeoutType=IdleConnectionTimeout 值=120
- 添加超时 TimeoutType=headerWaitTimeout value=0x40
添加 urlacl
添加统一资源定位器 (URL) 保留条目。 此命令保留非管理员用户和帐户的 URL。 可以通过将 NT 帐户名与侦听和委托参数一起使用或使用 SDDL 字符串来指定 DACL。
语法
add urlacl [ url= ] URL [ [user=] User [ [ listen= ] yes | no [ delegate= ] yes | no ] | [ sddl= ] SDDL ]
参数
参数 | 说明 | 要求 |
---|---|---|
网址 | 指定完全限定的统一资源定位器 (URL)。 | 必须 |
user | 指定用户或用户组名称 | 必须 |
侦听 | 指定以下值之一:yes:允许用户注册 URL。 这是默认值。 no:拒绝用户注册 URL。 | 可选 |
委托 | 指定以下值之一: yes:允许用户委托 URL no:拒绝用户委托 URL。 这是默认值。 | 可选 |
SDDDL | 指定描述 DACL 的 SDDL 字符串。 | 可选 |
示例
下面是 add urlacl 命令的四个示例。
- 添加 urlacl url=https://+:80/MyUri user=DOMAIN\user
- add urlacl url=https://www.contoso.com:80/MyUri user=DOMAIN\user listen=yes
- add urlacl url=https://www.contoso.com:80/MyUri user=DOMAIN\user delegate=no
- 添加 urlacl url=https://+:80/MyUri sddl=...
删除缓存
从 HTTP 服务内核 URI 缓存中删除所有条目或指定的条目。
语法
delete cache [ [ url= ] URL [ [recursive= ] yes | no ]
参数
参数 | 说明 | 要求 |
---|---|---|
网址 | 指定要删除的完全限定的统一资源定位器 (URL)。 | 可选 |
递归 | 指定是否删除 URL 缓存下的所有条目。 yes:删除所有条目。no:不删除所有条目 | 可选 |
示例
下面是 delete cache 命令的两个示例。
- 删除缓存 url=https://www.contoso.com:80/myresource/ 递归=是
- 删除缓存
删除 iplisten
从 IP 侦听列表中删除 IP 地址。 IP 侦听列表用于确定 HTTP 服务绑定到的地址列表的范围。
语法
delete iplisten [ ipaddress= ] IPAddress
参数
参数 | 说明 | 要求 |
---|---|---|
IP 地址 | 要从 IP 侦听列表删除的 IPv4 或 IPv6 地址。 IP 侦听列表用于确定 HTTP 服务绑定到的地址列表的范围。 “0.0.0.0”表示任何 IPv4 地址,“::”表示任何 IPv6 地址。 这不包括端口号。 | 必须 |
示例
下面是 delete iplisten 命令的四个示例。
- 删除 iplisten ipaddress=fe80::1
- 删除 iplisten ipaddress=1.1.1.1
- 删除 iplisten ipaddress=0.0.0.0
- 删除 iplisten ipaddress=::
删除 sslcert
删除 IP 地址和端口的 SSL 服务器证书绑定和相应的客户端证书策略。
语法
delete sslcert [ ipport= ] IPAddress:port
参数
参数 | 说明 | 要求 |
---|---|---|
IP 端口 | 指定要为其删除 SSL 证书绑定的 IPv4 或 IPv6 地址和端口。 冒号字符 (:) 用作 IP 地址和端口号之间的分隔符。 | 必须 |
示例
下面是 delete sslcert 命令的三个示例。
- 删除 sslcert ipport=1.1.1.1:443
- 删除 sslcert ipport=0.0.0.0:443
- 删除 sslcert ipport=[::]:443
删除超时
删除全局超时,并将服务恢复为默认值。
语法
delete timeout [ timeouttype= ] idleconnectiontimeout | headerwaittimeout
参数
参数 | 说明 | 要求 |
---|---|---|
timeouttype | 指定超时设置的类型。 | 必须 |
示例
下面是 delete timeout 命令的两个示例。
- 删除超时 timeouttype=idleconnectiontimeout
- 删除超时 timeouttype=headerwaittimeout
删除 urlacl
删除 URL 保留项。
语法
delete urlacl [ url= ] URL
参数
参数 | 说明 | 要求 |
---|---|---|
网址 | 指定要删除的完全限定的统一资源定位器 (URL)。 | 必须 |
示例
下面是 delete urlacl 命令的两个示例。
- 删除 urlacl url=https://+:80/MyUri
- 删除 urlacl url=https://www.contoso.com:80/MyUri
flush logbuffer (刷新日志缓冲区)
刷新日志文件的内部缓冲区。
语法
flush logbuffer
显示缓存状态
列出缓存的 URI 资源及其相关属性。 此命令列出缓存在 HTTP 响应缓存中的所有资源和相关属性,或显示单个资源及其相关属性。
语法
show cachestate [ [url= ] URL]
参数
参数 | 说明 | 要求 |
---|---|---|
网址 | 指定要显示的完全限定的 URL。 如果未指定,则显示所有 URL。 该 URL 还可以是注册 URL 的前缀。 | 可选 |
示例
下面是 show cachestate 命令的两个示例:
- 显示缓存状态 url=https://www.contoso.com:80/myresource
- 显示缓存状态
显示 iplisten
在 IP 侦听列表中显示所有 IP 地址。 IP 侦听列表用于确定 HTTP 服务绑定到的地址列表的范围。 “0.0.0.0”表示任何 IPv4 地址,“::”表示任何 IPv6 地址。
语法
show iplisten
显示服务状态
显示 HTTP 服务的屏幕截图。
语法
show servicestate [ [ view= ] session | requestq ] [ [ verbose= ] yes | no ]
参数
参数 | 说明 | 要求 |
---|---|---|
视图 | 指定是否基于服务器会话或请求队列查看 HTTP 服务状态的快照。 | 可选 |
详细 | 指定是否显示还显示属性信息的详细信息。 | 可选 |
示例
下面是 show servicestate 命令的两个示例。
- show servicestate view=“session”
- 显示 servicestate view=“requestq”
显示 SSLCERT
显示 IP 地址和端口的安全套接字层 (SSL) 服务器证书绑定和相应的客户端证书策略。
语法
show sslcert [ ipport= ] IPAddress:port
参数
参数 | 说明 | 要求 |
---|---|---|
IP 端口 | 指定 SSL 证书绑定显示的 IPv4 或 IPv6 地址和端口。 冒号字符 (:) 用作 IP 地址和端口号之间的分隔符。 如果未指定 ipport,则会显示所有绑定。 | 必须 |
示例
下面是 show sslcert 命令的五个示例。
- 显示 sslcert ipport=[fe80::1]:443
- 显示 sslcert ipport=1.1.1.1:443
- 显示 sslcert ipport=0.0.0.0:443
- 显示 sslcert ipport=[::]:443
- 显示 SSLCERT
显示超时
显示 HTTP 服务的超时值(以秒为单位)。
语法
show timeout
显示 urlacl
显示指定保留 URL 或所有保留 URL 的自由访问控制列表 (DACL)。
语法
show urlacl [ [url= ] URL]
参数
参数 | 说明 | 要求 |
---|---|---|
网址 | 指定要显示的完全限定的 URL。 如果未指定,则显示所有 URL。 | 可选 |
示例
下面是 show urlacl 命令的三个示例。
- 显示 urlacl url=https://+:80/MyUri
- 显示 urlacl url=https://www.contoso.com:80/MyUri
- 显示 urlacl