Відповіді:
Це не 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 отримує помилку 500 HTTP від сервера під час його виконання 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.3K) [текст / звичайна], Збереження в: `index.html '
wget --spider
отримує заголовки:
Увімкнено режим павука. Перевірте, чи існує віддалений файл., Довжина: не вказано [текст / звичайний] Віддалений файл існує.
Хоча ні wget
, у багатьох perl
установках з lwp
модулем буде встановлена HEAD
команда.