web-dev-qa-db-fra.com

Commande shell pour voir les en-têtes HTTP

Existe-t-il une commande Shell pour voir les en-têtes d'une demande HTTP?

Par exemple, j'aimerais savoir ce que les en-têtes ont récupéré de www.example.com/test.php sont

Comment puis-je faire ceci?

39
Damiano

Afin de récupérer uniquement l'en-tête, essayez ceci:

curl -I example.com

Depuis la page man:

-Je me dirige
(HTTP/FTP/FILE) Récupérez uniquement l'en-tête HTTP! Les serveurs HTTP disposent de la commande HEAD qui permet d'obtenir uniquement l'en-tête d'un document. Lorsqu'elle est utilisée sur un fichier FTP ou FILE, curl affiche uniquement la taille du fichier et l'heure de la dernière modification.

Utilisez wget par exemple

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

Vous pouvez le faire avec curl:

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

Résultat:

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

(pour une raison quelconque, l'IANA a décidé de rediriger example.com, résultat: pas de corps)

boucle le manuel à propos de -i option:

-j'inclus

(HTTP) Inclut l'en-tête HTTP dans la sortie. L'en-tête HTTP comprend des éléments tels que le nom du serveur, la date du document, la version HTTP et plus encore ...

8
Lekensteyn

Ou vous pouvez utiliser HEAD http://www.example.com. Le résultat est très similaire à celui produit par curl -i 'http://example.com/' bien qu'il semble renvoyer plus d'en-têtes.

200 OK 
 Connexion: fermer 
 Date: Dim, 20 mars 2011 19:08:58 GMT 
 Serveur: Apache/2.2.3 (CentOS) 
 Contenu- Longueur: 2945 
 Type de contenu: texte/html; charset = UTF-8 
 Dernière mise à jour: Wed, 09 Feb 2011 17:13:15 GMT 
 Client-Date: Sun, 20 Mar 2011 19:09:08 GMT 
 Client-homologue: 192.0.32.8:80.
6
MrD

Vous pouvez les voir avec curl .

5
yojimbo87

Utilisation curl --include pour inclure les en-têtes de réponse en haut du corps de réponse.

ou curl --verbose pour tout voir, y compris le certificat SSL échangeant la poignée de main (ainsi que d'autres informations de débogage)

si la demande elle-même et ni le corps de réponse ne vous concernent pas, utilisez simplement curl --head

par exemple curl --head --no-check-certificate --url "https://example.com".

Vous pouvez télécharger gnu curl déjà pré-compilé pour la plupart des plateformes. curl est également très utile, surtout si vous souhaitez diriger ou rediriger le résultat dans un script.
*par exemple: https://superuser.com/a/1007898/429721

3
user168291