IIS 10声称完全支持HTTP / 2。我想知道是否有办法在IIS 10上关闭HTTP / 2。
要在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。
这是旧的 - 但我认为id分享我的经验。当我们从服务器2008转换到2016年时,我注意到了这一点,并且仅在我们的经典asp页面上。我注意到我将response.buffer设置为true,然后使用响应头等等,最后发送response.flush。
我看到Chrome只会在第一次通话时出现这个问题,如果我再次发出通话就行了 - 那就是因为它回落到了http 1.1。禁用http2工作,但这不是一个好的解决方案。
我在response.flush之后添加了response.end并且问题消失了。所以把它当作值得的东西 - 对我来说它似乎与不结束响应相关联,这在http 1.1中运行良好,但在http2中不知何故不行。
也许这可以帮助其他人。