Назад | Перейти на главную страницу

Команда оболочки для просмотра заголовков HTTP

Есть ли команда оболочки для просмотра заголовков HTTP-запроса?

Например, я хотел бы знать, какие заголовки получены из www.example.com/test.php являются

Как я могу это сделать?

Чтобы получить только заголовок, попробуйте следующее:

curl -I example.com

Из man страница:

-I / - голова
(HTTP / FTP / FILE) Получить только HTTP-заголовок! HTTP-серверы имеют команду HEAD, которая используется для получения ничего, кроме заголовка документа. При использовании с файлом FTP или FILE curl отображает только размер файла и время последнего изменения.

Используйте, например, wget

wget -O - -o /dev/null --save-headers www.example.com/test.php

Вы можете сделать это с помощью curl:

curl -i 'http://example.com/'

Результат:

HTTP/1.0 302 Found
Location: http://www.iana.org/domains/example/
Server: BigIP
Connection: Keep-Alive
Content-Length: 0

(по какой-то причине IANA решила перенаправить example.com, результат: нет тела)

страница руководства кудри о -i вариант:

-i / - включить

(HTTP) Включите в вывод HTTP-заголовок. HTTP-заголовок включает в себя такие вещи, как имя сервера, дату документа, HTTP-версию и многое другое ...

Или вы можете использовать HEAD http://www.example.com. Результат очень похож на результат, полученный curl -i 'http://example.com/' хотя кажется, что он возвращает больше заголовков.

200 OK
Connection: close
Date: Sun, 20 Mar 2011 19:08:58 GMT
Server: Apache/2.2.3 (CentOS)
Content-Length: 2945
Content-Type: text/html; charset=UTF-8
Last-Modified: Wed, 09 Feb 2011 17:13:15 GMT
Client-Date: Sun, 20 Mar 2011 19:09:08 GMT
Client-Peer: 192.0.32.8:80
Client-Response-Num: 1

Вы можете увидеть их с завиток.

Использовать curl --include чтобы включить заголовки ответа в верхнюю часть тела ответа.

или curl --verbose чтобы увидеть все это, включая сертификат SSL, обменивающийся рукопожатием (плюс другую отладочную информацию)

если сам запрос и ни тело ответа вас не интересуют, просто используйте curl --head

например curl --head --no-check-certificate --url "https://example.com".

Вы можете скачать gnu curl уже скомпилирован для большинства платформ. curl тоже весьма полезен, особенно если вы хотите передать или перенаправить результат внутри скрипта.
*например: https://superuser.com/a/1007898/429721