0

I'm running an IIS web server on Windows Server 2019, and I need to disable HTTP/2 for some specific sites while keeping it enabled for others.

I know that I can disable HTTP/2 globally by setting the following registry keys:

For TLS:

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

For clear text (non-TLS):

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

However, this approach disables HTTP/2 for all sites on the server. Is there a way to disable HTTP/2 for specific sites or applications in IIS using PowerShell or any other method?

I've looked into the IIS configuration settings but couldn't find an option to control HTTP/2 at the site level.

Any guidance or scripts to achieve this would be greatly appreciated.

Environment:

Windows Server 2019 IIS 10

What I've Tried:

Modifying the global registry keys (disables HTTP/2 server-wide) Searching through IIS site-level settings via PowerShell

1 Answer 1

1

By setting -SslFlag property in command, you can achieve your needs, something like below:

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

Simply refer to this doc: New-IISSiteBinding - SslFlag property.

Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.