Chcę poznać status HTTP stron internetowych korzystających z Ubuntu. Użyłem curl
i wget
rozkazałem w tym celu. Problem polega jednak na tym, że te polecenia pobierają całą stronę internetową, a następnie wyszukują nagłówek i wyświetlają go na ekranie. Na przykład:
$ curl -I trafficinviter.com
HTTP/1.1 200 OK
Date: Mon, 02 Jan 2017 14:13:14 GMT
Server: Apache
X-Pingback: http://trafficinviter.com/xmlrpc.php
Link: <http://trafficinviter.com/>; rel=shortlink
Set-Cookie: wpfront-notification-bar-landingpage=1
Content-Type: text/html; charset=UTF-8
To samo dzieje się z Wget
poleceniem, w którym pobierana jest cała strona i niepotrzebnie zużywa moją przepustowość.
To, czego szukam, to: jak uzyskać kod stanu HTTP bez pobierania żadnej strony, dzięki czemu mogę zaoszczędzić zużycie przepustowości. Próbowałem użyć curl, ale nie jestem pewien, czy pobieram całą stronę lub tylko nagłówek do mojego systemu, aby uzyskać kod stanu.
command-line
wget
curl
Jaffer Wilson
źródło
źródło
curl -v
(--verbose
) jest przydatnym sposobem na debugowanie, co curl faktycznie wysyła i odbiera.Odpowiedzi:
curl -I
pobiera tylko nagłówki HTTP; nie pobiera całej strony. Odman curl
:Inną opcją jest instalacja
lynx
i używanielynx -head -dump
.Żądanie HEAD jest określone przez protokół HTTP 1.1 ( RFC 2616 ):
źródło
Dzięki
wget
, trzeba korzystać z--spider
opcji , aby wysłać żądanie głową jak curl:źródło