net :: ERR_INSECURE_RESPONSE与CDN

时间:2016-07-27 18:39:09

标签: html css heroku https cdn

我已在heroku上部署了一个应用程序,但css无效。

我正在使用w3.css框架,我将其导入如下: <link rel="stylesheet" href="//www.w3schools.com/lib/w3.css">

我得到的错误是: GET https://www.w3schools.com/lib/w3.css net::ERR_INSECURE_RESPONSE

我很确定它与网站的证书有关。

但即使我手动接受&#34;无效&#34;网站上的证书,我收到404错误。

另外,从我看来,w3.css只通过http提供其CDN: http://www.w3schools.com/lib/w3.css 不是https: www.w3schools.com/lib/w3.css

所以,我只是想确认实际上是这种情况,这不是我的错(不知道如何加载https!)

最后,它不是Chrome错误(来自我在SO中所读过的内容)。 Firefox也不起作用。

更新

正如预期的那样,当我下载w3css框架并在本地链接到它时,错误已得到解决。

2 个答案:

答案 0 :(得分:1)

正如您所说,看起来这只是与网站的证书(或缺乏)有关。这就是您接受无效证书时收到404的原因,因为该网站的https://版本不存在。

如果您仍希望从CDN提供资产,您可以将文件放在原始服务器上并通过CDN加速,或将其直接存储在CDN的存储云中(如果适用)。这是一个比较各种CDN提供商http://cdncomparison.com/

的好列表

答案 1 :(得分:0)

修改响应以使其更准确......

这里有几个问题:

首先。请注意,此文件无法通过HTTPS使用,因为它会返回404错误。 要下载该文件,您可以将http://协议添加到URI以使用HTTP而不是HTTPS。

其次,最重要的是阻止您从网页链接库的内容; 此库无法公开嵌入。 Web服务器没有使用适当的CORS标头进行响应。在这种情况下,响应中缺少Access-Control-Allow-Origin: *标头:

< HTTP/1.1 200 OK
< Cache-Control: public,max-age=3600,public
< Content-Type: text/css
< Date: Mon, 29 Aug 2016 01:27:41 GMT
< Etag: "6213abc99edd11:0+ident"
< Last-Modified: Wed, 03 Aug 2016 15:14:31 GMT
< Server: ECS (sea/55DD)
< Vary: Accept-Encoding
< X-Cache: HIT
< X-Powered-By: ASP.NET
< Content-Length: 28929

您最好的选择是下载文件并从您自己的服务器本地链接。