Obtenir des informations d'en-tête HTTP à partir de sites Web à l'aide de curl

Le moyen le plus simple d'obtenir des informations d'en-tête HTTP à partir de n'importe quel site Web consiste à utiliser l'outil de ligne de commande curl. La syntaxe pour récupérer un en-tête de site Web est la suivante:


curl -I url

C'est un capital 'je' pas un L minuscule, le capital i n'extrait que les informations d'en-tête .

Essayez-le vous-même avec un exemple d'URL, voici un exemple de chaîne de syntaxe utilisant Google.com comme en-tête de site Web pour récupérer:

curl -I www.google.com

Encore une fois, il est important de noter que j'ai capitalisé si vous voulez seulement l'en-tête du site. En utilisant une minuscule je vais vous donner une tonne de HTML minifié avec l'en-tête, il suffit de faire défiler dans la fenêtre du terminal vers les lignes qui suivent directement la commande curl pour trouver les informations d'en-tête HTTP.

Un exemple de détails d'en-tête HTTP récupérés par curl -I pourrait ressembler à ceci:

HTTP / 1.1 200 OK
Date: jeu, 07 juil. 2014 22:15:57 GMT
Expire: -1
Cache-Control: privé, max-age = 0
Content-Type: texte / html; jeu de caractères = ISO-8859-1
Set-Cookie: PREF = ID = 741dreb25486514f: FF = 0: TM = 13154488957: LM = 15526957: S = kmFi3jKGDujg; expire = Sam, 06-Jul-2013 22:15:57 GMT; chemin = /; domaine = .google.com
Set-Cookie: NID = 48 = 8jFij8f8Lej115z89237iaa8sdoA8akjak8DybmLHXMC6aNGyxM8DnyNv-
iYjF09QhiCq2MdM3PKJDSFlkJalkaPHAU4JQy7MM8MKDQKEFLPqzoTSBPLKJLKMmdILlkdjel; expire = ven, 06-Jan-2012 22:15:57 GMT; chemin = /; domaine = .google.com; HttpOnly
Serveur: gws
X-XSS-Protection: 1; mode = bloc
Transfert-Encodage: chunked

Un moyen facile de contourner tout le non-sens HTML, Javascript et CSS est d'utiliser l'option -D pour télécharger l'en-tête lui-même dans un fichier séparé, puis ouvrez ce fichier dans votre éditeur de texte préféré:

curl -iD httpheader.txt www.apple.com && open httpheader.txt

C'est la même commande curl que précédemment avec quelques modificateurs. L'utilisation de la double perluète indique à la commande d'ouvrir uniquement le fichier si l'en-tête a été téléchargé avec succès. Utiliser 'open' ouvrira httpheader.txt dans l'éditeur de texte GUI par défaut, qui est généralement Text Edit, mais vous pouvez utiliser vi, nano, ou l'un de vos outils de ligne de commande préférés:

curl -iD httpheader.txt www.apple.com && vi httpheader.txt

curl est un utilitaire puissant qui vaut la peine de se familiariser avec. Toute personne impliquée dans le Web devrait tirer un bon parti de l'astuce de l'en-tête, et les développeurs Web peuvent également utiliser curl pour copier très rapidement tout le code HTML et CSS d'un site Web. L'autre avantage de Curl est qu'il est largement disponible pour pratiquement tous les systèmes d'exploitation, il est livré avec presque toutes les versions de Mac OS X et Linux, et vous pouvez également trouver des versions pour Windows et même Android et iOS grâce à des applications personnalisées. Parce que curl a une longue histoire et que les commandes sont universelles sur toutes les plateformes, c'est vraiment le choix idéal pour extraire les détails des en-têtes et est un outil précieux pour les administrateurs système, les administrateurs réseau, les développeurs web et bien d'autres professions techniques.

Mise à jour: mise à jour des drapeaux de -i à -I par recommandation du lecteur, merci à tous!