フルタイム(:00)で1日数回実行するcronジョブがあります。この間にPHPスクリプトを実行するにはどうしたらよいですか?他の人が私のスクリプトを実行できるようにしたくありません。ここに私が考えたものがあります:特定の時間にPHPファイルでのみcronを実行する方法を教えてください
if (date('i', time()) > 2 || date('i', time()) < 58) {
die;
}
より良い、より安全な方法はありますか?
フルタイム(:00)で1日数回実行するcronジョブがあります。この間にPHPスクリプトを実行するにはどうしたらよいですか?他の人が私のスクリプトを実行できるようにしたくありません。ここに私が考えたものがあります:特定の時間にPHPファイルでのみcronを実行する方法を教えてください
if (date('i', time()) > 2 || date('i', time()) < 58) {
die;
}
より良い、より安全な方法はありますか?
あなたのWebディレクトリの外にPHPスクリプトを置くと、you/cronだけがそれを実行することができ、誰も実行できません。
#!/usr/local/bin/php /* depends on your server and configuration */
cronジョブは、通常、rootユーザーとして実行されています
は例があなたのPHPスクリプトの最初の行として、このようなものを追加するように、cronでPHPスクリプトを実行するためのさまざまな方法があります。あなただけのルートで、スクリプトの実行可能ファイルと読みを作ることができる。また、あなたはルートを使用しない場合は、特別なユーザとしてスクリプトを実行するために、crontabファイル内のコマンドを変更することができ
sudo chown root script_for_root_only.php
sudo chmod 744 script_for_root_only.php
...
私はあなたがウェブでアクセス可能な場所にスクリプトを持っていないと推測できます。あなたがそれをしたら、それを動かす。
"Someone else"?誰のように?あなたのスクリプトがcronによってのみ実行されるようにされている場合は、Webからアクセスできないようにしてください(下の@jeroenのように)。これにより、サーバーに直接アクセスできない人はいません。これにより、サーバーに直接アクセスできる人、知っていて信頼できる人(またはサーバーに直接アクセスしてはいけない人)が残されます。 –
他の人がスクリプトを実行できる場合は、そのスクリプトを読むことができます。それは彼らがそれをコピーして、あなたの時間制限を取り除き、それをとにかく走らせることができるということです。 –