Réponses:
Ce n'est pas wget, mais vous pouvez le faire assez facilement en utilisant curl.
curl -I http://www.superuser.com/
Produit cette sortie:
HTTP/1.1 301 Moved Permanently
Content-Length: 144
Content-Type: text/html; charset=UTF-8
Location: http://superuser.com/
Date: Sat, 09 Oct 2010 19:11:50 GMT
-I
est équivalent à --head
.
https
, vous pouvez également ajouter -k
ou--insecure
Essayer:
wget -S --spider www.example.com
Vous pouvez également passer -O /dev/null
pour empêcher wget
d'écrire une réponse HTTP dans un fichier.
-S
va montrer en- têtes, mais il exécute un GET
, pas HEAD
. En d'autres termes, il récupérera l'URL complète.
wget -S --spider http://localhost
Le journal créé dans le serveur apache est127.0.0.1 - - [04/Mar/2014:15:36:32 +0100] "HEAD / HTTP/1.1" 200 314 "-" "Wget/1.13.4 (linux-gnu)"
Il n'y a pas besoin de curl .
Avec Wget, ajouter --spider
implique que vous souhaitiez envoyer une HEAD
demande (par opposition à GET
ou POST
).
C'est une excellente façon minimaliste de vérifier si une URL répond ou non. Vous pouvez par exemple l'utiliser dans des contrôles par script, et l' HEAD
opération vous assurera de ne pas surcharger le réseau ni le serveur Web cible.
Informations sur le bonus: Si Wget obtient une erreur HTTP 500 du serveur lorsqu’il le fait, HEAD
il le fera ensuite pour utiliser GET
la même URL. Je ne connais pas le raisonnement pour cette conception. C'est la raison pour laquelle une requête HEAD
et une GET
requête peuvent être exécutées sur le serveur. Si rien ne va pas, seule une HEAD
requête est effectuée. Vous pouvez désactiver cette fonctionnalité avec l' --tries
option de limiter Wget à une seule tentative.
En tout et pour tout, je le recommande pour tester si une URL répond:
# This works in Bash and derivatives
wget_output=$(wget --spider --tries 1 $URL 2>&1)
wget_exit_code=$?
if [ $wget_exit_code -ne 0 ]; then
# Something went wrong
echo "$URL is not responding"
echo "Output from wget: "
echo "$wget_output"
else
echo "Check succeeded: $URL is responding"
fi
wget -S
obtient le fichier:
Content-Length: 2316, Length: 2316 (2.3K) [text / plain], Enregistrement dans: `index.html '
wget --spider
obtient les en-têtes:
Mode Spider activé. Vérifier si le fichier distant existe., Longueur: non spécifié [text / plain] Le fichier distant existe.
Bien que non wget
, de nombreuses perl
installations avec lwp
module auront une HEAD
commande installée.