繁体   English   中英

如何处理net :: ERR_SSL_PROTOCOL_ERROR?

[英]How to deal with net::ERR_SSL_PROTOCOL_ERROR?

我将JS库包含到我的网站中

<script type="text/javascript" src="http://www.turnjs.com/lib/turn.min.js "></script> 

由网页设计公司设计,维护和托管。 我要实现的目标的实现似乎编码正确-请参阅我的JSFiddle-可以正常工作且没有错误。 但是,当将代码从我的JSfiddle复制并粘贴到我的网站时,它根本不起作用-Google Chrome开发者控制台显示以下内容:

GET https://www.turnjs.com/lib/turn.min.js net::ERR_SSL_PROTOCOL_ERROR

但这很奇怪,因为我的Jsfiddle代码包含相同的turn.min.js ,并且可以在其中运行,但在我的网站上却没有。

这不是JavaScript问题,而是ssl probem。

您无法通过通过安全连接(https)提供服务的html页面通过不安全连接(http)获取文件。 如果要使用https(应该!),则需要通过安全连接获取脚本。 要获取文件,您应该使用:

<script type="text/javascript" src="https://www.turnjs.com/lib/turn.min.js "></script> 

并通过相应地配置服务器,确保通过https提供文件。 这是lighttpd的简单配置,这是apache的配置 如果您没有CA签署的证书,则可以使用letencrypt(www.letsencrypt.org/getting-started/)获得一个证书。 如果您不控制服务器,则应与该服务器的人联系。

  • 1)无法通过HTTPS 访问http://www.turnjs.com/lib/turn.min.js 这会导致您的错误。
  • 2)JSfiddle通过HTTP访问因此没有问题
  • 3) <script type="text/javascript" src="http://www.turnjs.com/lib/turn.min.js "></script>在任何情况下都会对您的网站造成问题,因为这是几乎所有浏览器都会阻止的混合内容示例。

解:

将此文件复制到您的服务器上,然后包含本地版本

我更喜欢以这种方式在页面中添加脚本: <script type="text/javascript" src="//www.turnjs.com/lib/turn.min.js "></script>

这样浏览器就可以检查连接类型本身。 在您的情况下,这实际上是行不通的( 请参阅第1页 )。

Google开发人员的一个很好的解释

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM