背景

遇到一个奇怪的问题,我的网站一直是全站https,浏览器的绿锁也一直显示正常。但今天偶然性会出现绿锁不安全,经过反复测试进行问题重现,定位到是加载了Valine评论后,出现上述情况。

排查问题

初步排查,是leancloudapi网址的SSL证书过期或不匹配导致的。
首先,本网站主题butterfly自带了Valine
系统,各项配置文件都在主题目录下的_config.yml配置;我使用的是Valine国际版账号,可以免绑定自定义域名,问题应该就出在这。
经过一番搜索,最终确定问题,原来是通用的国际版域名us.avoscloud.com证书已过期,官方也早已经不建议使用通用域名。,而默认使用Valine配置,并且配置为国际版的Leancloud往往使用的就是通用域名。

解决办法

通用域名us.avoscloud.com现在已经恢复正常,但是毕竟还是不稳定,还是推荐指定自定义服务器URL

自定义服务器的URL需要到LeanCloud后台查看。打开后台之后进入Settings(设置) - App Keys(应用Keys),找到Domain whitelist(域名白名单),里面的Request domain(Request 域名)里面的那个xxxxxxxx.api.lncldglobal.com就是你需要指定的服务器URL。其中xxxxxxxx就是各位的AppID的前8位字符。

解决办法就是将Valine的配置项serverURLs填入刚刚获得的服务器URL
不同主题,配置项的位置不同,以我使用的主题Butterfly来说,在主题文件下修改_config.yml或者在根目录下修改_config.butterfly.yml文件中的Valine配置项即可。