google.comなどのサイトへのプロキシの応答をテストするためにLinuxサーバーにHTTPIEツールをインストールし、トラフィックがプロキシを通過するかどうかをテストするスクリプトを作成しようとしています。次のコマンドを実行し、200 OK を含む結果を得ると、トラフィックは問題ありません。応答が得られない場合、スクリプトはコマンドが結果を返さなかったことを知らせるEメールを送信したいと思います。
以下は、私が書いたスクリプトの最初の部分が続く例です。
# http --proxy=http:http://my_proxy:3128 head www.google.com
HTTP/1.1 200 OK
Cache-Control: private, max-age=0
Connection: keep-alive
Content-Encoding: gzip
Content-Length: 4622
Content-Type: text/html; charset=ISO-8859-1
Date: Sat, 28 Apr 2018 01:40:13 GMT
Expires: -1
P3P: CP="This is not a P3P policy! See g.co/p3phelp for more info."
Proxy-Connection: keep-alive
Server: gws
Set-Cookie: 1P_JAR=2018-04-28-01; expires=Mon, 28-May-2018 01:40:13 GMT; path=/; domain=.google.com
Set-Cookie: NID=129=eWFNZlP7mCtJ_zVH7sa6kxTOc9ebMpwLMgUSVnfMA1_bJM2UFfZwly9-BqDSPFI2EaY45t7GhTAte-w783Od3JZ5MGcqmjxT86h8yKdAK1t1qlCm9oexkaYRFgRp64MK; expires=Sun, 28-Oct-2018 01:40:13 GMT; path=/; domain=.google.com; HttpOnly
Via: 1.1 isdsecwsandc2.tch.harvard.edu:3128 (Cisco-WSA/10.5.2-042)
X-Frame-Options: SAMEORIGIN
X-XSS-Protection: 1; mode=block
したがって、各プロキシIPアドレスに対して上記のコマンドを実行するスクリプトを作成したいと思います。 200 OKを受け取ったら、次のステップに進み、タイムアウトになったら通知するメールを送ってください。
スクリプトはここにあります:
#!/bin/bash
proxy_targets="http://10.5.5.5:3128 http://10.5.5.6:3128 http://10.5.5.7:3128"
failed_hosts=""
for i in $proxy_targets
do
http --proxy=http:$i head www.google.com > /dev/null