さくらのマネージドサーバで、wgetをcronで動かす

six-coreでこんなことをやってたのですが
0 0 * * * wget --http-user=Basic認証のID --http-passwd=Basic認証のパスワード https://xxxxxxxx.xx/test/index.php

さくらのマネージドに移行したら動かなくなったので
いろいろ調べてやっと解決。。
0 0 * * * /usr/local/bin/wget --http-user=Basic認証のID --http-passwd=Basic認証のパスワード --no-check-certificate "https://xxxxxxxx.xx/test/index.php"

・SSHで動かすときはwget ~~~~~で動くけど、
 cronで動かすときは/usr/local/bin/wget ~~~となる

・SSHで動かしたら↓こんなエラーが出たので`–no-check-certificate’オプションをつける
 —————————————————————–
ERROR: cannot verify ●●●●●●●●’s certificate, issued by ‘●●●●●●●●●●●●●●’:
Unable to locally verify the issuer’s authority.
To connect to ●●●●●●●●●●● insecurely, use `–no-check-certificate’.
 —————————————————————–
 たぶんSSLじゃなければこのオプションはいらない

・/usr/local/bin/wgetのときは実行するURLをダブルクオートで囲む

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
★追記★
cronからwgetで動かすと、
・実行結果をメール送信
 上記のように宛先を指定していなければ、デフォルトのメール(postmaster@~~など)に送る
・URLから得られた情報(ソースなど)をファイルに残す
します。

ちょくちょくサーバを確認し、メールやファイルを削除すれば問題ないが
放っておくとどんどんデータが溜まってサーバを圧迫してしまう。。

ので、–spiderオプション、–quietオプションをつけると
メール送信しない・ファイルに残さないようにできます。

0 0 * * * /usr/local/bin/wget --spider --quiet --http-user=Basic認証のID --http-passwd=Basic認証のパスワード --no-check-certificate "https://xxxxxxxx.xx/test/index.php"

コメントをどうぞ

Popular Posts

Sorry. No data so far.