如何在IIS 10上禁用HTTP / 2

问题描述 投票:24回答:2

IIS 10声称完全支持HTTP / 2。我想知道是否有办法在IIS 10上关闭HTTP / 2。

iis windows-10 windows-server-2016
2个回答
24
投票

要在Windows 10 HTTP.SYS上禁用HTTP / 2,请在HKEY_LOCAL_MACHINE \ System \ CurrentControlSet \ Services \ HTTP \ Parameters中的Windows 10桌面上设置以下注册表值

EnableHttp2Tls REG_DWORD 0

EnableHttp2Cleartext REG_DWORD 0

如果失败是使用HTTP,则仅需要第二个。第一个是HTTPS。


0
投票

这是旧的 - 但我认为id分享我的经验。当我们从服务器2008转换到2016年时,我注意到了这一点,并且仅在我们的经典asp页面上。我注意到我将response.buffer设置为true,然后使用响应头等等,最后发送response.flush。

我看到Chrome只会在第一次通话时出现这个问题,如果我再次发出通话就行了 - 那就是因为它回落到了http 1.1。禁用http2工作,但这不是一个好的解决方案。

我在response.flush之后添加了response.end并且问题消失了。所以把它当作值得的东西 - 对我来说它似乎与不结束响应相关联,这在http 1.1中运行良好,但在http2中不知何故不行。

也许这可以帮助其他人。

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