各位前輩請教一下
好奇為什麼curl -i xxx 跟 curl -I 的http code 會不一樣?
舉例來說curl -I -k https://www.twtainan.net/
這個會出現302
curl -i -k https://www.twtainan.net/
這則是200正常
大小i的差別應該只有有沒有顯示body ??
環境:
win10 cmd下輸入指令
再請教一下,若用PHP撈取上述網址的表頭的話
curl通常會這樣設定curl_setopt($curl, CURLOPT_HEADER, true); // 顯示表頭
curl_setopt($curl, CURLOPT_NOBODY, true); // 忽略內容
但這樣的話,
用curl_getinfo($curl, CURLINFO_HTTP_CODE)
也是抓到會出現302,
若想讓他能抓到200,然後只顯示表頭的話,
要怎麼設定?
-I 跟 -i 跑的指令有些微差別
-I, --head
(HTTP FTP FILE) Fetch the headers only! HTTP-servers feature the command HEAD which this uses to get nothing but the header of a document. When used on an FTP or FILE file, curl displays the file size and last modification time only.
-i, --include
Include the HTTP response headers in the output. The HTTP response headers can include things like server name, cookies, date of the document, HTTP version and more...
To view the request headers, consider the -v, --verbose option.
所以看起來 -i 只會輸出最後的結果, -I 只會取得最初的header資訊