GNU/Linux >> Tutoriels Linux >  >> Linux

Script bash pour vérifier si un site HTTPS public est opérationnel

Un parmi tant d'autres :

if curl -s --head  --request GET https://example.com | grep "200 OK" > /dev/null; then 
   echo "mysite.com is UP"
else
   echo "mysite.com is DOWN"
fi

Voici une façon de le faire en utilisant wget au lieu de curl. Gardez à l'esprit que MacOS n'est pas livré avec wget par défaut.

Une requête Web réussie renverra un code de 200, un échec renverra un 300, 400, 404, ect... (voir les codes de l'API REST)

Cette ligne renverra un 1 si la requête Web a réussi, sinon elle renverra 0

wget -q  -O /tmp/foo google.com | grep '200' /tmp/foo | wc -l
1

Le plugin check_http de Nagios peut faire cela et bien plus encore, y compris vérifier un texte spécifique dans la réponse. Vous pouvez l'exécuter à partir d'un script shell indépendamment de Nagios lui-même :

$ check_http --ssl -H www.google.com -r 'Feeling Lucky'
HTTP OK: HTTP/1.1 200 OK - 11900 bytes in 0.086 second response time |time=0.085943s;;;0.000000 size=11900B;;;0

$ echo $?
0

Linux
  1. Renvoie une correspondance de regex dans un script Bash, au lieu de la remplacer

  2. Vérifier qu'il y a au moins deux arguments donnés dans un script bash

  3. Bash Shell Script - Recherchez un indicateur et saisissez sa valeur

  4. Comment vérifier l'accès à Internet à l'aide du script bash sous Linux?

  5. Comment vérifier si un fichier existe dans un répertoire spécifique dans un script bash ?

35 exemples de scripts bash

Comment exécuter un script bash

Comment déboguer un script bash ?

Comment vérifier la sous-chaîne dans Shell Script Bash?

Comment vérifier la syntaxe d'un script Bash sans l'exécuter ?

N'importe quel moyen de quitter le script bash, mais sans quitter le terminal