HTTP HEAD
のリクエストをwget
を使って送りたいのですが、HTTP HEAD
のリクエストは可能でしょうか?これは可能なのでしょうか?
56 Xiè Jìléi 2010-10-07
wgetではありませんが、curlを使えばかなり簡単にできます
curl -I http://www.superuser.com/
この出力を生成します
HTTP/1.1 301 Moved Permanently
Content-Length: 144
Content-Type: text/html; charset=UTF-8
Location: http://superuser.com/
Date: Sat, 09 Oct 2010 19:11:50 GMT
62 SleighBoy 2010-10-09
Try:
wget -S --spider www.example.com
また、-O /dev/null
を渡すことで、wget
がファイルにHTTPレスポンスを書き込まないようにすることもできます
38 Casual Coder 2010-10-07
カールは必要ありません
Wget で --spider
を追加すると、(GET
や POST
とは対照的に) HEAD
リクエストを送りたいことになります
これは、URL が応答したかどうかをチェックするための素晴らしいミニマムな方法です。例えば、スクリプトによるチェックでこれを使用することができ、HEAD
操作はネットワークやターゲットのウェブサーバのどちらにも負荷をかけないことを確認します
ボーナス情報。WgetがHEAD
を実行したときにサーバからHTTPエラー500を取得した場合、同じURLに対してGET
を実行するために移動します。この設計の理由はわかりません。これが、サーバに対して HEAD
と GET
の両方のリクエストが実行されているのを見ることができる理由です。何も問題がなければ、HEAD
リクエストだけが実行されます。この機能を無効にするには、--tries
オプションで Wget の実行を一度だけに制限することができます
全体的に、URLが反応しているかどうかのテストにおすすめです
# This works in Bash and derivatives
wget_output=$(wget --spider --tries 1 $URL 2>&1)
wget_exit_code=$?
if [ $wget_exit_code -ne 0 ]; then
# Something went wrong
echo "$URL is not responding"
echo "Output from wget: "
echo "$wget_output"
else
echo "Check succeeded: $URL is responding"
fi
21 thisisfun 2014-08-15
wget -S
はファイルを取得します
Content-Length: 2316, Length: 2316 (2.3K) [text/plain], Saving to.index.html’ に保存する
wget --spider
はヘッダを取得します
スパイダーモードが有効になっています。リモートファイルが存在するか確認します
4 LanPartacz 2014-04-05
--method=HTTP-Method
For the purpose of RESTful scripting, Wget allows sending of other HTTP Methods
without the need to explicitly set them using --header=Header-Line. Wget will use
whatever string is passed to it after --method as the HTTP Method to the server.
私のbashスクリプトで以下を使用して、期待通りに動作することを確認することができます!
wget --method=HEAD https://www.website.com/
0 phbits 2020-06-30
wget
ではありませんが、lwp
モジュールをインストールしたperl
の多くは、HEAD
コマンドがインストールされています
-1 Rich Homolka 2010-10-07