我有一個cron作業,在全時段(00)每天運行多次。我怎麼才能讓PHP腳本在這段時間內運行?我不想讓其他人能夠運行我的腳本。這是我想到的:我如何只允許cron在特定時間內在PHP文件上運行
if (date('i', time()) > 2 || date('i', time()) < 58) {
die;
}
有沒有更好,更安全的方法?
我有一個cron作業,在全時段(00)每天運行多次。我怎麼才能讓PHP腳本在這段時間內運行?我不想讓其他人能夠運行我的腳本。這是我想到的:我如何只允許cron在特定時間內在PHP文件上運行
if (date('i', time()) > 2 || date('i', time()) < 58) {
die;
}
有沒有更好,更安全的方法?
的cron作業通常作爲root用戶運行。你可以使你的腳本可讀和可執行僅根:
sudo chown root script_for_root_only.php
sudo chmod 744 script_for_root_only.php
您也可以在crontab改變命令來運行該腳本作爲一個特殊的用戶,如果你不想使用root ..
我認爲我們可以假設您沒有可訪問網頁的腳本。如果你確實移動了它。
「別人」?喜歡誰?如果您的腳本只能由cron運行,那麼它不應該從Web訪問(如下面的@jeroen所述),這樣可以消除任何無法直接訪問您的服務器的人。這隻會讓那些直接訪問您的服務器的人,您應該知道並信任的人(或者他們不應直接訪問您的服務器)。 –
如果其他人可以運行腳本,他們可以閱讀腳本。這意味着他們可以複製它,刪除您的時間限制,並反正運行它。 –