Polecenie powłoki, aby zobaczyć nagłówki HTTP

37

Czy istnieje polecenie powłoki, aby wyświetlić nagłówki żądania HTTP?

Na przykład, chciałbym wiedzieć, jakie są pobierane z nagłówków www.example.com/test.phpAre

W jaki sposób mogę to zrobić?

Damiano
źródło

Odpowiedzi:

43

Aby pobrać tylko nagłówek, spróbuj:

curl -I example.com

Ze manstrony:

-I / - head
(HTTP / FTP / FILE) Pobierz tylko nagłówek HTTP! Serwery HTTP zawierają polecenie HEAD, którego używa, aby uzyskać tylko nagłówek dokumentu. W przypadku pliku FTP lub PLIKU curl wyświetla tylko rozmiar pliku i czas ostatniej modyfikacji.

Wstrzymano do odwołania.
źródło
Ponadto -D <file>zapisze nagłówki w pliku.
rdzeń rdzeniowy
11

Użyj na przykład wget

wget -O - -o /dev/null --save-headers www.example.com/test.php
Dmytro Leonenko
źródło
tak, ale nie chcę zapisywać strony na komputerze ... chcę tylko widzieć nagłówki
Damiano
2
Nie uratujesz go za pomocą tego polecenia
Dmytro Leonenko
Tak, właśnie wypełniasz/dev/null : p -O -zapisuje nagłówki na standardowe wyjście („konsola”)
Lekensteyn
Polecenia wypisują nagłówki i całą stronę na standardowe wyjście. (Ubuntu 16.04, wget 1.17.1)
Frank Nocke
8

Możesz to zrobić za pomocą curl:

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

Wynik:

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

(z jakiegoś powodu IANA postanowiła przekierować example.com, wynik: brak treści)

strona podręcznika z lokami na temat -iopcji:

-Zawieram

(HTTP) Uwzględnij nagłówek HTTP w danych wyjściowych. Nagłówek HTTP zawiera między innymi nazwę serwera, datę dokumentu, wersję HTTP i więcej ...

Lekensteyn
źródło
6

Lub możesz użyć HEAD http://www.example.com. Wynik jest bardzo podobny do uzyskanego przez, curl -i 'http://example.com/'chociaż wydaje się, że zwraca więcej nagłówków.

200 OK
Połączenie: zamknij
Data: nie, 20 marca 2011 19:08:58 GMT
Serwer: Apache / 2.2.3 (CentOS)
Długość treści: 2945
Content-Type: text / html; charset = UTF-8
Ostatnia modyfikacja: śr., 09 lutego 2011 17:13:15 GMT
Data klienta: nie, 20 marca 2011 19:09:08 GMT
Klient-peer: 192.0.32.8:80
Liczba odpowiedzi klienta: 1
MrD
źródło
3

Służy curl --includedo dołączania nagłówków odpowiedzi na górze treści odpowiedzi.

lub curl --verbosezobaczyć wszystko, w tym certyfikat SSL wymieniający uścisk dłoni (oraz inne informacje debugowania)

jeśli samo żądanie i ani ciało odpowiedzi nie dotyczą ciebie, po prostu użyj curl --head

na przykład curl --head --no-check-certificate --url "https://example.com".

Możesz pobrać GNU curljuż skompilowany dla większości platform. curl jest również bardzo przydatny, szczególnie jeśli chcesz przesłać wyniki lub przekierować wynik w skrypcie.
* na przykład: https://superuser.com/a/1007898/429721

Społeczność
źródło