curl for Windows官網(wǎng)下載:
https://curl.haxx.se/windows/
問題1??: curl命令http請求3xx跳轉(zhuǎn)解決辦法
再測的一個(gè)項(xiàng)目是使用 curl命令來實(shí)現(xiàn)文件下載盗舰,之前跑著都挺好的,今天怎么都下載不下來。原來是請求的這個(gè)鏈接有一個(gè)302的跳轉(zhuǎn)。
<html>
<head><title>302 Found</title></head>
<body bgcolor="white">
<center><h1>302 Found</h1></center>
<hr><center>nginx</center>
</body>
</html>
上網(wǎng)查了一下發(fā)現(xiàn)其實(shí) curl 命令是支持請求重定向的,可以通過 -L 參數(shù)配置花沉,如下
curl -L http://www.xxxx.com
官網(wǎng)相關(guān)說明文檔:
https://curl.haxx.se/docs/httpscripting.html#Location_header
問題2??: 跳轉(zhuǎn)后的協(xié)議是 https ,curl命令默認(rèn)不支持 SSL
curl: (60) SSL certificate problem: self signed certificate in certificate chain
curl: (1) Protocol https not supported or disabled in libcurl
解決方法:
curl默認(rèn)使用一個(gè)“bundle”執(zhí)行SSL證書驗(yàn)證證書頒發(fā)機(jī)構(gòu)(CA)的公鑰(CA certs)媳握。
如果默認(rèn)包文件不夠用碱屁,可以指定一個(gè)備用文件使用——cacert選項(xiàng)。
如果這個(gè)HTTPS服務(wù)器使用一個(gè)由CA簽名的證書包毙芜、證書驗(yàn)證可能由于a而失敗
證書的問題(可能過期忽媒,或者名稱可能過期)不匹配的域名在URL)。
如果您想關(guān)閉curl的證書驗(yàn)證腋粥,請使用-k(或--insecure)選項(xiàng)晦雨。
用curl訪問https網(wǎng)址的命令:
curl -k https://www.xxxx.com
注意-k的目的就是讓curl不對服務(wù)器的https證書認(rèn)證架曹。
有關(guān)SSL證書問題,參考官網(wǎng):
https://curl.haxx.se/docs/sslcerts.html