Chrome 54 没有从我的网站获得 HTTPS 响应; Chrome 53、Chromium、Firefox 和 Safari 都可以

Posted

技术标签:

【中文标题】Chrome 54 没有从我的网站获得 HTTPS 响应; Chrome 53、Chromium、Firefox 和 Safari 都可以【英文标题】:Chrome 54 doesn't get HTTPS response from my site; Chrome 53, Chromium, Firefox, and Safari do 【发布时间】:2017-03-06 01:15:12 【问题描述】:

大约一周前,我的网站运行良好。由于 Chrome 版本 54,我无法加载它。 HTTPS 请求没有得到任何响应并显示“(已取消)”状态。它可以在 Chromium、Firefox、Safari 甚至 Chrome 53 中正常加载。Chrome 的开发者工具没有提供任何有用的信息 - 请参见图片。

这是 Chromium 中的样子:

(您会注意到第二张图片显示了子域 www。这是因为当裸域正确加载时,它会重定向到子域。)

我尝试修改我的服务器代码(Node、Express)以在收到每个请求时打印一条消息,当我在 Chrome(54.0.2840.71(64 位))中访问该站点时,它甚至不打印。当我访问 Chromium(53.0.2785.143(64 位))时,它会打印出来。

我什至尝试过使用另一台计算机。同样的事情 - 在 Chrome 中失败,在 Safari 中成功。

是什么让它表现得像这样?我不知道从哪里开始解决这个问题。

【问题讨论】:

【参考方案1】:

我不太了解这种行为,但我找到了一种在我的应用程序中修复它的方法。我使用 NPM 模块 spdy 代替 Node 的内置 https 模块通过 https 为我的应用程序提供服务。切换回内置模块解决了这个问题。 (这是一个简单的更改 - API 是兼容的。)我不知道 spdy 在 Chrome 54 中是否一直存在这个问题,但我在这个问题上浪费了太多时间,所以我将进一步调查作为练习接下来挖掘这个答案的考古学家。

【讨论】:

以上是关于Chrome 54 没有从我的网站获得 HTTPS 响应; Chrome 53、Chromium、Firefox 和 Safari 都可以的主要内容,如果未能解决你的问题,请参考以下文章

无法使用 PayPal PDT 从我的 JSP 应用程序获得响应

Chrome 上的阅读器模式允许用户在我的网站上复制文本。如何禁用它?

防止本地网站在Chrome上强制使用HTTPS?

网站可在 Firefox 和 IE 中运行,但不适用于 Chrome

从我的移动网站使用 Facebook Messenger 发送 URL

如何从我使用 Chrome DevTools 访问的任何网站中挑选颜色?