这个问题的解决方法很骚气,记录一下
背景:定位到是mac的Catalina系统版本下的HTTPS问题
当天,同事将新建的项目部署到了测试环境,让我访问一下,没问题的话就可以开始撸业务代码啦。
我打开页面,发现有css和js没有加载出来,犹豫测试环境的协议用的HTTP,我马上推断是引用的资源来自https协议,没有被信任。
打开调试模式一看,果然是这样,哈哈,双击https的协议链接,准备点击:高级——》继续前往XXX,让chrome信任即可。
但是点开高级,我就傻眼了,tmd居然没有继续前往的按钮拉
三个同事一起看这个问题,我们有两人都没有这个按钮,而唯一有按钮的那个同事和我们环境的区别,就在于他的mac还没升级Catalina。
通过排除法,我们已经能定位原因啦,就是Catalina系统版本导致的。
解决方法
结合HTTPS,Catalina,chrome等关键词,我们在chrome的社区里面找到了解决方案。
大致操作就是在这个页面(确认你需要信任它,没有风险),直接键盘输入
thisisunsafe
就这样,chrome就会信任你的协议,之前的https链接,打开后也能从高级点继续前往,这个问题被完美解决了。
至于这个解决方法,真的好骚啊,这哥们儿肯定是谷歌chrome内部员工吧,玩儿呢?
记录一下问题的具体原因
苹果已经为Catalina接受了SSL证书的一系列新要求,这些要求记录在 https://support.apple.com/zh-cn/HT210176 总结一下:
- 密钥大小必须至少为2048位。
- 哈希算法必须为SHA-2或更高版本。
- DNS名称必须在SubjectAltName中,而不能仅在CN字段中。
对于2019-07-01之后发行的证书:
- 必须存在ExtendedKeyUsage扩展名,并带有id-kp-ServerAuth OID。
- 有效期不得超过825天。