Ubuntu 16.04でPHPスクリプト用のcronjobをセットアップしたいのは気が狂っています。
ターミナルでこのコマンドを入力します
$ crontab -e
次に、ubuntuが推奨するnanoエディターを選択します。それからブローラインに入ります。次に、Ctrl + Cを押して、Y/Nに保存を要求します。閉じるには、YとF2を押します。
* */2 * * * root php /var/www/html/script.php
他の試みは、
* */2 * * * /var/www/html/script.php
* */2 * * * root /var/www/html/script.php
以下のコマンドを使用してcronを再起動した後。
Sudo /etc/init.d/cron restart
次に、crontabリストcrontab -l
を確認します。rootユーザーにcronジョブが設定されていません。
上記のいずれかの行を使用して、cron.hourly/cron.dディレクトリにcrontab.txtファイルを直接作成しようとしました。
私は多数のフォーラムを試しましたが、すべてがcrontab -e
と言ってから、cronディレクトリ内にcrontabファイルを入力または作成しました。何も助けてくれません。私は頭を掻いています。
Ubuntu 16.04およびPHPバージョン7.0でPHPスクリプトのcronジョブを作成する正しい方法は何ですか
crontab -e
には、ユーザー名を指定するroot
部分を含めないでください(crontab -e
は特定のユーザーのcrontabを既に編集しています)。
ルートとして実行する場合は、Sudo crontab -e
を実行し、次を使用します。
* */2 * * * php /var/www/html/script.php
または/etc/cron.d
に以下を含むファイルを作成します。
* */2 * * * root php /var/www/html/script.php
Crontabはcrontab -u <username> -e
のように使用されます。 -u <username>
部分は、現在のユーザーに対して省略できます。 rootユーザーに使用したい場合は、Sudo crontab -e
を使用できます。次に、スケジュールの配置* */2 * * *
を入力します。行の最後の引数は、スクリプトを実行する行です。終了すると、crontabは、ジョブが正常にインストールされたかどうかにかかわらず、出力を書き込みます。最後の議論について考慮しなければならないことがいくつかあります。
Sudo apt-get install php7-cli
)which php
と入力し、crontab * */2 * * * /usr/bin/php /var/www/html/script.php
でフルパスを使用します。 /usr/bin
はcrontabのパスにあります。この手順はおそらく必要ありませんが、害はありません。この場合、phpスクリプトはコマンドラインから実行されるため、Apacheはcrontabスクリプトとは何の関係もありません。スクリプト内のApache関連データに依存している場合、コマンドラインでアクセスできない場合、PHPスクリプトで問題が発生する可能性があります。