PHP自動実行するには
Cron利用
PHPスクリプトを自動実行するには、cronを利用します。
cronとは
cronとは、スクリプトを自動実行するサービスです。 これを利用すると、RSS取得PHPを定期的に実行して更新情報をウェブ上に表示する、といったことも可能になります。
cronの使い方
コマンドラインでcrontab -eと入力すると、cron設定が可能になります。 一行に、分、時、日、月、曜日(0=Sun,1=Mon,2=Tue,3=Wen,4=Thu,5=Fri,6=Sat)、実行するコマンドを入力します。 ワイルドカード(*)は、すべてを意味します。 例えば下の例は、毎日4時20分に、/home/myscript.shを実行します。
20 4 * * * /home/myscript.sh
このウェブサイトで使用しているJETBOYサーバーでは、管理画面からcron設定することができます。
cronからPHP実行
cronサービスでPHPを実行する場合は、コマンドラインPHPとして呼び出す必要があります。 具体的には、以下のいずれかの方法を用います。
- スクリプトの一行目に、#!/usr/bin/phpと書く
- 実行するコマンドを、/usr/bin/php ファイル名とする。
パスはサーバー毎に異なります。/usr/bin/phpまたは/usr/local/bin/phpが多いようです。
※実行するプログラムは、十分注意して作成してください。プログラムに問題があると、サーバーに過度の負担をかけたり、最悪の場合サーバーダウンさせてしまったり、という可能性があります。
cronが動かない理由
以下に、良くありがちな原因をいくつか列挙しておきます。
- ファイルパーミッションのミス。cronで実行するスクリプトには通常実行権限が必要です。
- パスの設定ミス。スクリプト内のパス指定も確認してください。
- ユーザーのcron利用が許可されていない。レンタルサーバーの場合は要確認。