協助建立網站平台,看到平台的 cron 是這樣跑的:
curl https://my.site/cron/update_catch.php curl https://my.site/cron/delete_unpaied_user.php
這樣樣做會出現問題:任何網路上的使用者都可以觸發 cron job。
若遇到惡意使用者去戳 update_catch.php
,應該就可以作到 DoS 的效果。
比較好的作法,還是將 cron job 放在 web 沒有辦法 access 的路徑,再使用主機的程式去執行。例如:
/usr/bin/php /path/to/site/internal/cron/update_catch.php