Ответы:
Это не 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
-I
эквивалентно --head
.
https
, вы также можете добавить -k
или--insecure
Пытаться:
wget -S --spider www.example.com
Вы также можете передать, -O /dev/null
чтобы предотвратить wget
запись HTTP-ответа в файл.
-S
будет показывать заголовки, но он выполняет GET
, а не HEAD
. Другими словами, он будет получать весь URL.
wget -S --spider http://localhost
журнал, созданный на сервере Apache,127.0.0.1 - - [04/Mar/2014:15:36:32 +0100] "HEAD / HTTP/1.1" 200 314 "-" "Wget/1.13.4 (linux-gnu)"
Там нет необходимости для завитка .
С Wget добавление --spider
подразумевает, что вы хотите отправить HEAD
запрос (в отличие от GET
или POST
).
Это отличный минималистичный способ проверить, отвечает URL или нет. Например, вы можете использовать это в проверках по сценарию, и HEAD
операция будет гарантировать, что вы не будете загружать ни сеть, ни целевой веб-сервер.
Дополнительная информация: если Wget получает HTTP-ошибку 500 от сервера при выполнении, HEAD
он затем переходит к выполнению сопоставления GET
с тем же URL-адресом. Я не знаю причины этого дизайна. Это причина , почему вы можете увидеть одновременно 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
wget -S
получает файл:
Длина содержимого: 2316, длина: 2316 (2,3 КБ) [текст / обычный], сохранение в: `index.html '
wget --spider
получает заголовки:
Режим паука включен. Проверьте, существует ли удаленный файл., Длина: не указано [текст / обычный] Удаленный файл существует.
Хотя нет wget
, во многих perl
установках с lwp
модулем будет установлена HEAD
команда.