问题一: 一个 url,在谷歌浏览器里显示 ssl 证书是没问题的。
在 goland 里通过 client.Do(request),访问没问题。
但是在 linux 里运行提示自签名证书(x509: certificate signed by unknown authority)
为啥会这样呢? chrome 和 windows 的 goland 里都没提示证书有问题。为什么到 Linux 就提示自签名证书了呢
问题二: 于是我在代码里加了 ssl 不需要校验(TLSClientConfig: &tls.Config{InsecureSkipVerify: true}),另外一个没问题的 Url,原来是正常的,现在变得超级慢,我 print 一下,发现慢的地方就是卡在了 client := &http.Client{Transport: tr},这部分 为什么会这样呢?
1
pmispig 2019-06-10 14:11:44 +08:00
建议在 linux 用 curl 看看会不会有证书问题, 如果有的话,多半是因为 web 服务器的证书没配置证书链
|
2
tiedan 2019-06-10 16:02:49 +08:00
没装 ca-certificates 吧
|
3
vuuv 2019-06-10 22:16:02 +08:00 via Android
自签名提示都是 self signed。是能找到 CA 证书的(就是自己)。
你这个是 unknown authority,未知的 CA。如 #2 所述,你没有正确安装 ca-certificates。 |