asi*_*ira 7 macos ssl curl r rcurl
我在使用RCurl函数getURL访问使用自签名证书的服务器上的HTTPS URL 时遇到问题.我在Mac OS X 10.9.2上运行R 3.0.2.
我已经阅读了有关该主题的常见问题解答和卷曲页面.所以这就是我的立场:
RCurl顽固地拒绝使用以下代码连接到该网站:
getURL(" https://somesite.tld ",verbose = T,cainfo = normalizePath("〜/ cert.pem"))
这是我得到的输出:
* Adding handle: conn: 0x7f92771b0400
* Adding handle: send: 0
* Adding handle: recv: 0
* Curl_addHandleToPipeline: length: 1
* - Conn 38 (0x7f92771b0400) send_pipe: 1, recv_pipe: 0
* About to connect() to somesite.tld port 443 (#38)
* Trying 42.42.42.42...
* Connected to somesite.tld (42.42.42.42) port 443 (#38)
* SSL certificate problem: Invalid certificate chain
* Closing connection 38
Run Code Online (Sandbox Code Playgroud)
当我--cacert在具有相同cert.pem文件和完全相同URL的Linux VM中使用选项和上面的RCurl代码测试curl时,它完美地工作.
因此在Linux和Mac OS X上进行相同的测试,并且仅在Mac OS X上测试失败.即使将证书添加到钥匙串也不起作用.
唯一可行的是使用ssl.verifypeer=FALSE,但出于安全原因我不想这样做.
我在这里没有想法.其他人对如何使其工作有任何建议?