我沒用過 bluehost, 所以只給你一個大概的方向。從你的設定來看, /public_html/admin_notification.php
八成不是可執行檔, 所以系統不知道要怎麼執行它, 底下兩個方法都試試看:
php /public_html/admin_notification.php
admin_notification.php
第一行加上這個 #!/usr/bin/env php
, 類似這樣:#!/usr/bin/env php
<?php
.....你的程式
admin_notification.php
加上 rwx 的 x 權限, 就是可執行的意思如果上面兩種方式都失敗了, 你也可以考慮用 webcron 服務, 例如 https://www.easycron.com/
他的運作方式是定時用 http 去讀取你給的網址, 所以你要填上完整的網址。
另外, 寫 shell script 跟寫網頁不太一樣, 我建議先用下列程式驗證是否有被執行:
#!/usr/bin/env php
<?php
file_put_contents(__DIR__ . "/test.txt", "cron test");
只要出現了 test.txt, 就是 crontab 有成功執行了。但是記得要讓這個資料夾是可寫入的。
假設是跟北美買的虛擬主機,是否需要依照當地時間?如何改成本地時間?
crontab 是依照主機時間, 我想應該沒辦法改
樓上那是改 php 的顯示時間, 但我想他問的是 crontab 執行的時間
我設定 1 * * * * 這是每分鐘執行沒錯吧?我用了兩種
php /home/***/public_html/admin_notification.php
php /public_html/admin_notification.php
這兩種都沒有作用耶