检查 URL 是否已启动并正在运行的脚本

检查 URL 是否已启动并正在运行的脚本

我编写了一个脚本来检查我们的三个 URL 是否已启动。如果它们已关闭,我将需要发送一条消息,说明该 URL 已关闭且不活动。

问题是,我做错了什么,现在在任何情况下我的输出总是显示“URLs is up”

仅供参考..我们使用 nginx,因此为什么我有 grep “http 302 found”的输出

if curl -k --head $URL1 | grep "302 Found" && curl  -k --head $URL1 | grep "302 Found" && curl  -k --head $URL1 | grep "302 Found"
then
  echo "All The URLs are up!"
else
  echo " all url is down "
fi

答案1

尝试一下。

#!/bin/bash              

for URL in <url1> <url2> <url3>
    do                     
    STATUS=$(curl -s -o /dev/null -w "%{http_code}\n" $URL)
      if [ $STATUS == 302 ] ; then
          echo "$URL is up, returned $STATUS"
      else                     
          echo "$URL is not up, returned $STATUS"
      fi
    done

相关内容