[英]Cron job is not working properly in cpanel
我已經設置了 cron 作業,它工作正常,但是當我直接運行 php 文件(從路徑/url)時,它成功運行,但從 cron 運行卻沒有。 但是,我設置了另一個非常簡單的文件以確保我的 cron 命令/路徑設置正確,我創建了另一個文件並使用了簡單的 php 郵件功能,並且它運行成功。 請建議我研究它的可能領域。 (我正在使用 Cpanel)
而不是像這樣放入 cronjob 命令
php -f /path_to_script/script.php
像這樣放置命令:
curl http://domain.com/yourscript.php
如果你想抑制輸出,你可以在最后添加> /dev/null
。
所以完整的命令是:
curl http://domain.com/yourscript.php > /dev/null
希望這可以幫助!
作為 cURL 的替代方法,您可以通過基於文本的瀏覽器調用您的腳本。 像這樣的東西:
lynx -dump http://localhost/script.php
你不應該有任何相對路徑——這包括文件和命令。 例如,如果你想復制一個文件,你不應該只調用cp
,而應該調用/bin/cp
之類的命令的完整路徑。 要找出完整路徑,您可以在命令行運行which <cmd>
。
我遇到了同樣的問題。 我在 cpanel 上的 laravel 項目中使用任務調度。 我的命令是
/usr/local/bin/php /home/user_name/public_html/path/to/cron/script
是版本問題。 我的服務器默認 php 版本是 7.1.33,但在我的項目中,php 版本是 7.2。 因此,當我運行 schedule 命令時,它會使用與我的項目不兼容的 php7.1。 因此,根據 cpanel 文檔,該命令實際上適用於不同的 php 版本
/usr/local/bin/ea-php99 /home/shadhinapp/domain_path/path/to/cron/script
。
我的任何 cron 作業命令是:
/usr/local/bin/ea-php72 /home/user_name/path_to_your_project/artisan schedule:run >> /dev/null 2>&1
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.