我有一个站点,在Ubuntu 16.04服务器(OpenSSL 1.0.2h)上的Nginx 1.10.0上运行.我想通过HTTP / 2服务这个站点,所以我相应地配置了Nginx:
listen 443 ssl http2 default_server;
listen [::]:443 ssl http2 default_server
它在我的办公室Ubuntu 15.10桌面上的FF 47和Chrome 51以及我家Ubuntu 15.10桌面上的相同浏览器中都能正常工作.
但是在我的家中,Windows 10台式机和笔记本电脑HTTP / 2仅适用于FF. Chrome 51,IE 11和Edge在此网站上使用HTTP / 1.1.
所以,我很困惑. This service说,我的网站支持HTTP / 2和ALPN(这是HTTP / 2在Chrome since version 51中工作所必需的).
Chrome版本和功能完全相同:
HTTPS工作,Chrome开发工具中的安全面板显示,一切都是安全的.
This demo在Chrome,IE和Edge中显示消息“此浏览器未启用HTTP / 2.”和“您的浏览器支持HTTP / 2!”在FF.
但是medium.com上的HTTP / 2在所有这些浏览器中运行良好.
所以,我的问题是:发生了什么以及如何解决这个问题?
解决方法:
您使用的是防病毒软件(例如Avast)吗?它是否正在检查您的HTTPS流量?
它通过像MITM一样工作,所以你连接它,它连接到真正的网站.如果他们只支持http / 1(据我所知他们只做),那就可以解释这一点.虽然奇怪的是不适用于Medium,除非你有例外.
在访问该站点时,通过查看HTTPS证书来检查它是否是由本地Avast服务器“发布”,应该很容易检查.
如果没有,那么建议你查看你的密码,因为HTTP / 2很挑剔它使用的是哪些.你的网站在https://www.ssllabs.com/servertest上有什么奇怪的表现吗?它用于Chrome的密码是什么?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。