网站ERR_SSL_PROTOCOL_ERROR报错解决123
-
busuanzi (不蒜子)计数插件,忽然间就不计数了,打开网页后计数的位置就在转圈。
F12查看,控制台,显示ERR_SSL_PROTOCOL_ERROR
。
这种一般是指SSL协议(安全证书)出了问题,还以为到期了,结果一番鼓捣下来发现无效。在 Hexo 主题配置文件的inject
HEAD里插入- <script defer src="https://busuanzi.9420.ltd/js"></script>
也无效。
后来偶然发现可能是VPN的问题,关掉VPN就不报错!
于是,在VPN中添加规则:
V2rayN --> 设置 --> 路由设置 --> 绕过大陆 --> (domain那个direct),添加domain:busuanzi.ibruce.info,
,确定即可。 -
网站还引入了 Google Analytics,添加好后同样面临着 1 所述问题,显示
ERR_SSL_PROTOCOL_ERROR
需要如上添加两个direct 路径的 domain:
domain:google-analytics.com, domain:googletagmanager.com,
确定即正常,不再报错。 -
几个自建网站同时出现“并非私密连接”,网页打不开
原本以为又是上述的vpn问题,结果添加direct路径的 domain后还是一样报错。又发现同样部署于vercel的其他评论系统与工具网站也同样报错(但主网站却没问题),开始怀疑这次是不是真的 SSL certificate 出了问题。到vercel设置项domain里查看,vercel自动分配域名的waline评论系统可以正常访问,自定义域名却不可以访问(报错非秘密连接),且有一个类似“获取ssl证书”的提示一直在转圈working。于是查看了vercel上部署的其他网站,也是一样。好吧,确定了是 ssl 证书的问题。
vercel问题部署的setting,进入左侧的
Domains
,显示的自定义域名旁边有两个按钮Refresh
和Edit
。点Edit
,复制原来的二级域名,点击下面的Remove
将其删除。在下图箭头处粘贴刚才复制的二级域名,点击右侧
Add
。等待几秒,vercel应该自动完成 ssl 证书续期了(或者说是为一个“新”二级域名申请了 ssl 证书)。问题到此迎刃而解!话说vercel本来就应该自动完成 ssl certificate 续期,为何没有,还没研究清楚。怀疑跟 cloudflare 托管域名有关系。
如何确定证书是否已过期
SSL 证书确实存在过期的问题,所以,一旦看到相关提示,就要考虑是不是真的证书过了期。查看方法也很简单,以 Chrome 为例:
点击浏览器右上方的三个点 然后 More Tools (更多工具) > Developer Tools (开发人员工具):
点击 Security (安全)选项卡,即可查看证书是否有效。可以点击 View Certificate (查看证书)按钮查看证书详情,包括到期日期。
你也可以使用 Qualys’ SSL Server Test 在线工具查看 SSL 证书有效性。
只需将问题域名输入下图框中,点击 submit 即可(应该评级A或以上为正常,Ai-China网站最开始这里的评级是T,改正后A+):
有些主机服务提供商的控制台并不能实现证书续期,如果自己动手的话,命令行可能让人头大。所以,你可以使用 Certbot 实现此目的。