PR

さくらインターネットでphpをcronに設定(仕様変更?)

うろ覚えではあるが、確か、以前は以下のように設定すると動作していたはず。

%/usr/local/bin/php /home/***/www/***.jp/wp-content/plugins/twitter-mentions-as-comments/cron.php

しかし、SSH でログインして試験を行ったところ、何らエラーが表示されるわけでもなく、Kill されるわけでもなく、何事もなかったように扱われた。それとは別に、以前から何かのタイミングでCLI 版のCakePHP の呼び出しがエラーになるかKill されるようになっていたので、この機かに調べることにした。

スポンサードリンク

すると以下の様な記述を見つけた。

3/27追記:

/usr/local/bin/phpがCLI版PHP(CLI SAPI)へと変更されています。

お客さまで用意されているPHPスクリプト自体の修正は必要と しませんが、CRONやメールの転送機能が利用できなくなるという 問い合わせがサポートへ寄せられています。 今後コマンドラインで使用するPHPは、カレントディレクトリを 変更する記述としていただきますようお願いいたします。

【動作しない例】

/usr/local/bin/php /home/アカウント名/プログラム名

【動作する例】

cd /home/アカウント名/www/programs ; /usr/local/bin/php プログラム名
(「cronの設定 さくらインターネット – Liber’s weblog」より引用)

完全に「動作しない例」に合致している。

だが、記事は2010 年1 月のもので、追記は3 月とされているからその辺りの問題と思われる。だがしかし、信頼性のない記憶によればそれ以後も動作していたような気がしなくもなくもないようなそうでもないような・・。

だが、明白なのはこれまでのように以下のように設定すると(SSH でなくcron として実行された結果は)うんともすんとも言わなかった。

%/usr/local/bin/php /home/***/www/***.jp/wp-content/plugins/twitter-mentions-as-comments/cron.php

そして、参考文献にあるように以下のように修正したところpostmaster 宛のメールを受信し、その結果は期待したものだった。

%cd /home/***/www/***.jp/wp-content/plugins/twitter-mentions-as-comments/ ; /usr/local/bin/php /home/***/www/***.jp/wp-content/plugins/twitter-mentions-as-comments/cron.php
 mentions found

# 注:この記事は、以前書かれたものです

参考文献

コメント