Command-Line

檢查 URL 時無法獲得 200 OK?

  • March 13, 2018

我試圖遵循本教程:https ://www.shellhacks.com/check-website-availability-linux-command-line/

使用該curl -Is http://www.shellhacks.com | head -1命令時,我200 OK根本無法訪問任何網站。要麼要麼。302 Moved Temporarily_ 我正在檢查特定網站是否可以處理請求。當我讀到 3xx 時,它說這是一種搬遷。但是,這是否意味著我的特定網站無法處理請求?似乎它重新定位的位置將處理我的請求。301 Moved Permanently``307 Temporary Redirect

我應該如何考慮 3xx 案例?

實際上,您可以獲取200 OKHTTP 響應,但最終無法通過head -1.
關鍵選項是-L

-L, --location

(HTTP/HTTPS) 如果伺服器報告請求的頁面已移動到不同的位置(用Location: 標頭和3XX響應程式碼指示),此選項將curl在新位置重做請求。如果與 -i,--include-I,一起使用,--head將顯示所有請求頁面的標題。


$ curl -LIs http://www.shellhacks.com
HTTP/1.1 301 Moved Permanently
Server: nginx
Date: Tue, 13 Mar 2018 12:58:31 GMT
Content-Type: text/html; charset=iso-8859-1
Connection: keep-alive
Location: https://www.shellhacks.com/
X-Page-Speed: on
Cache-Control: max-age=0, no-cache

HTTP/1.1 200 OK
Server: nginx
Date: Tue, 13 Mar 2018 12:58:31 GMT
Content-Type: text/html; charset=UTF-8
Connection: keep-alive
Link: <https://www.shellhacks.com/wp-json/>; rel="https://api.w.org/"
Set-Cookie: qtrans_front_language=en; expires=Wed, 13-Mar-2019 12:58:31 GMT; Max-Age=31536000; path=/
X-Page-Speed: on
Cache-Control: max-age=0, no-cache

引用自:https://unix.stackexchange.com/questions/429951