cronとは?
状態:-
閲覧数:1,423
投稿日:2017-02-23
更新日:2017-02-23
ジョブ(スクリプト)を自動実行するためのデーモンプロセス
・UnixやLinuxで広く使われるスケジューラー、もしくは、スクリプトを自動実行するサービス
・一定時間ごとに、プログラムを実行することができる
・例えば、RSS取得PHPを定期的に実行して更新情報をウェブ上に表示する、といったことも可能になる
・一般に、レンタルサーバーでは許可されていないか、動作に制限がある場合が多い
・Cronの設定はcrontabというコマンドで行うことが出来る
・UnixやLinuxで広く使われるスケジューラー、もしくは、スクリプトを自動実行するサービス
・一定時間ごとに、プログラムを実行することができる
・例えば、RSS取得PHPを定期的に実行して更新情報をウェブ上に表示する、といったことも可能になる
・一般に、レンタルサーバーでは許可されていないか、動作に制限がある場合が多い
・Cronの設定はcrontabというコマンドで行うことが出来る
cronが動かない理由(ありがちな原因)
ファイルパーミッション
ファイルパーミッションのミス
・cronで実行するスクリプトには通常実行権限が必要
・パスの設定ミス。スクリプト内のパス指定も確認
・require_once などで、require_once("../hoge/foo.php") のように相対指定をしているとダメ。回避するには require_once("/var/bar/hoge/foo.php") のようにルートからの絶対パスで書くか、cron 実行時にディレクトリを移動するように cron に記述。cd /var/bar/batchdir && php -f/var/bar/batchdir/example.php