5分ごとにPHPスクリプトを実行するためにXubuntuでcronjobを作成しました。私がやった方法は次のとおりです。
次のコマンドを入力しました。
$ crontab -e
次に、次のように入力します。
*/5 * * * * /usr/bin/php /var/www/pgrouting/workshop/web/php/calculation.php
用途が何であるかわかりません/usr/bin/php
。ディレクトリにそのファイルはありませんが、bin
PHPスクリプトを実行できませんか?
答え1
「問題」は、通常、PHPがWebサーバー上でモジュールとして実行されるように設計されていることです。コマンドラインからPHPスクリプトを実行するには、まずコマンドラインバージョンのPHPをインストールする必要があります。
apt-get install php5-cli
/usr/bin/php
はPHPバイナリを配置するデフォルトの場所ですが、ソースからPHPをコンパイルする場合は別の場所にある可能性があります。
通常、PHPスクリプトはシェルスクリプトとしてフォーマットされていないため、PHPスクリプトを実行するためにどのインタプリタを使用する必要があるかをcronに通知する必要があります。これがコマンドラインが使用される理由です/usr/bin/php /var/www/pgrouting/workshop/web/php/calculation.php
。
Shebangを使用してスクリプトをフォーマットして実行可能にし(chmod +x script.php
)、PHPをインタプリタとして指定せずに(たとえば./script.php
)コマンドラインから直接呼び出すことができます。
#!/usr/bin/php
<?php
print "Hello world!\n" ;
?>
答え2
代わりにWGETを試してください。
*/5 * * * * wget http://ip-address-or-domain-to-your-script/calculation.php