CURLを使用すると、-cookiesを渡すことで、Nagiosテストを実行したいWebサイトに正常にログインできます。
このようなもの:curl --cookie "user = 4reqrerqwr; userlogin = 123adsfjlk324" http://mysite.com/home/index.aspx -v | grepようこそ
1、レンダリングされたコードを視覚的に確認でき、2、Welcomeのgrep検索は、認証が成功した場合にのみ表示されるため、成功したことはわかっています。
私は次のようにcheck_httpを使用してNagiosでこれを模倣しようとしています:
./check_http -H mysite.com -u http://mysite.com/home/index.aspx -f follow
-s Welcome -k 'Cookie: user=4reqrerqwr;userlogin=123adsfjlk324' -v
私が見る大きな違いの1つは、cURLではCookieが1行に設定されているのに対し、check_httpからの詳細な応答ではCookieが2行に表示されていることです。
Cookie: user=4reqrerqwr;userlogin=123adsfjlk324
vs.
Cookie: user=4reqrerqwr
userlogin=123adsfjlk324
私は提案やもちろん代替案を受け入れています。 WebInjectをチェックアウトしましたが、これはSO closeであるようです。ドロップするのは嫌です。
最後に、check_curlを試し、Cookieをサポートするように拡張しました。これは機能しますが、応答が(null)になり、有効な結果が返されても、grepによってNagiosが失敗することはありません。
合格してみてください
check_http ... -k "Cookie: user=4reqrerqwr" -k "Cookie: userlogin=123adsfjlk324"