- 締切済み
ロリポップでOPENPNE(pseudo cron)
ロリポップでOPENPNE(2.14)を運営しています。 ロリポップはcronが使えないので 擬似cronとしてpseudo-cronを利用しています。 そこで質問なのですが、 動くファイルと動かないファイルがあるようで 運営開始以降ずーっと困っております。 動かしたいファイルは「tool_send_daily_news(デイリーニュース)」 ---------------------------- 00 9 * * * bin/tool_send_daily_news.cron 00 9 * * * bin/tool_send_daily_news.php ---------------------------- 共にダメです。 ログを見ると、指定どおりの時間にきちんと Running とCompletedを繰り返しているようです>< tool_send_daily_news.php をブラウザで直接叩くと送信はできるのですが cronで動かしたいのです。 また、OPENPNE内でオリジナルのスクリプトを作りました。 (とあるファイルを生成する) cron関係なので、bin/○○.phpとして置いて これもまた定期的に動かしたいのですが動きません・・・。 (ファイルが生成されていない) デイリーと同様にRunning とCompletedを繰り返しています。 ---------------------------- 00 9 * * * bin/○○.cron 00 9 * * * bin/○○.php ---------------------------- こちらもまた、ブラウザで直接実行するときちんとした動作が確認できます。 (ファイルが生成される) パーミッション、ディレクトリに問題はないと思います。 また、相対パスで動作しているファイルがあるので、絶対パスにはしていません。 これ以外に何か問題がありそうな指摘をお願い致します。 cronファイルの中身はどのファイルも形式は共通で ---------------------------- #! /bin/sh cd $1 $2 -f ○○.php ---------------------------- です。 PS: そもそも・・・なのですが、pseudo cronはcronファイルを経由せず、直接PHPファイルを実行する事は本当に出来ますでしょうか!? (検索すると、動作している方がいらっしゃる) 出来ない場合、cronファイルにはどのように書けばよいのでしょうか。 宜しくお願い致します。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- hogehoge78
- ベストアンサー率80% (433/539)
>また、相対パスで動作しているファイルがあるので、絶対パスにはしていません。 これが原因では無いでしょうか。 コマンドラインでPHPを叩いた場合、今自分が居る場所をホームポジションとするので、相対パスの場合、そのホームポジションから見た相対パスでファイルを読むものと思います。 一度絶対パスで引いて試してみてはいかがでしょうか。