如何使用 PowerShell 在 IIS 中禁用特定站点的 HTTP/2?

问题描述 投票:0回答:1

我在 Windows Server 2019 上运行 IIS Web 服务器,我需要对某些特定站点禁用 HTTP/2,同时对其他站点保持启用状态。

我知道我可以通过设置以下注册表项来全局禁用 HTTP/2:

对于 TLS:

HKLM:\System\CurrentControlSet\Services\HTTP\Parameters
EnableHttp2Tls (DWORD) = 0

对于明文(非 TLS):

HKLM:\System\CurrentControlSet\Services\HTTP\Parameters
EnableHttp2Cleartext (DWORD) = 0

但是,这种方法会禁用服务器上所有站点的 HTTP/2。有没有办法使用 PowerShell 或任何其他方法对 IIS 中的特定站点或应用程序禁用 HTTP/2?

我查看了 IIS 配置设置,但找不到在站点级别控制 HTTP/2 的选项。

任何实现此目的的指导或脚本将不胜感激。

环境:

Windows Server 2019 IIS 10

我尝试过的:

修改全局注册表项(在服务器范围内禁用 HTTP/2) 通过 PowerShell 搜索 IIS 站点级设置

powershell iis http2 windows-server-2019
1个回答
0
投票

通过在命令中设置

-SslFlag
属性,您可以实现您的需求,如下所示:

New-IISSiteBinding -Name "mySite" -BindingInformation "*:443:" -CertificateThumbPrint "xxxx" -CertStoreLocation "your:\cert\path" -Protocol https -SslFlag "DisableHTTP2"

只需参考此文档:New-IISSiteBinding - SslFlag property

© www.soinside.com 2019 - 2024. All rights reserved.