ロリポップのサーバでcronでphpが動作しない問題

投稿日: 2012/2/7 12:35

先日からCakePHPのシェル機能で実装した
自動ブログ投稿機能のcronシェルが動かないとボヤいていましたが、
ようやく解決方法がわかりました。

今回参考にさせていただいたページは

http://morio-dev.seesaa.net/article/216083627.html

のページ。

結論としてはロリポップのサーバでPHPのスクリプトをcron経由で実行する場合、
PHPコマンドをフルパスで指定する必要がある。
ということでした。

調べたらロリポップのPHP5.3のパスは

/usr/local/php5.3/bin/php

との事ですので、次のようなシェルを作成しました。

#! /bin/bash
/usr/local/php5.3/bin/php shell_path

shell_pathにはシェルまでのパスをフルパスで入れています。
たぶん相対パスでも動くとは思いますが一応フルパスにしています。

以上のシェルをcronで動作させたところようやく動作してくれました。