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

