Archive for Juni, 2013

HTTP mit Redirect auf Kommandozeile

Samstag, Juni 8th, 2013

Ich habe vor längerer Zeit mal beschrieben, wie man per Telnet oder Netcat einen HTTP-Request ausführen kann. Noch besser geht dies mit dem Perl-Tool lwp-request. Unter Linux findet man die Befehle GET und HEAD, aufgrund der fehlenden Case-Sensitivität gibt es diese nicht unter MacOS X. Behelfen kann man sich mit diesen beiden Alias-Definitionen:

alias GET='lwp-request -m GET'
alias HEAD='lwp-request -m HEAD'

Dann hat man die Möglichkeit, eine Seite abzurufen:

$ GET http://www.example.com

Will man die Header einer Antwort überprüfen ist das HEAD-Kommando nützlich:

$ HEAD http://www.example.com
200 OK
Connection: close
Date: Sat, 08 Jun 2013 11:19:20 GMT
Accept-Ranges: bytes
ETag: "780602-4f6-4db31b2978ec0"
Server: ECS (iad/1984)
Content-Length: 1270
Content-Type: text/html; charset=UTF-8
Last-Modified: Thu, 25 Apr 2013 16:13:23 GMT
Client-Date: Sat, 08 Jun 2013 11:19:21 GMT
Client-Peer: 93.184.216.119:80
Client-Response-Num: 1
X-Cache: HIT

Will man allerdings auch sehen, ob eine Weiterleitung korrekt funktioniert und ob es ein permanenter Redirect ist, benötigt man den Parameter -S:

$ HEAD -S http://www.example.com
HEAD http://www.example.com
302 Found
HEAD http://example.iana.org
200 OK
Connection: close
Date: Sat, 08 Jun 2013 11:20:09 GMT
Accept-Ranges: bytes
ETag: "780602-4f6-4db31b2978ec0"
Server: ECS (iad/1984)
Content-Length: 1270
Content-Type: text/html; charset=UTF-8
Last-Modified: Thu, 25 Apr 2013 16:13:23 GMT
Client-Date: Sat, 08 Jun 2013 11:20:10 GMT
Client-Peer: 93.184.216.119:80
Client-Response-Num: 1
X-Cache: HIT