问题:
wireshark抓包如下:
这里显示的是CA问题; 首先,颁发server证书的CA是没有问题的,那么应该是curl使用的ca-bandle.crt 有问题。
这里需要注意一下的是,windows上curl使用的CA不是系统系统证书管理里面的证书,而是指定的curl-ca-bandle.crt ,文档说明如下:
参看: curl源码中的: docs/SSLCERTS
当然,在linux中,可以在编译时指定ca文件的路径。
解决问题:
$ curl http://curl.haxx.se/ca/cacert.pem -o curl-ca-bundle.crt # download new
将curl-ca-bundle.crt 放到curl命令寻找的CA的目录中就行了。
linux上的路径可能是: /usr/share/ssl/certs/ca-bundle.crt 或者: