簡體   English   中英

使用 CPanel 在 cron 作業中運行 PHP 文件

[英]Run a PHP file in a cron job using CPanel

我只是想在 CPanel 中使用 cron 作業運行 PHP 腳本 - 這是正確的語法:

/usr/bin/php -q /home/username/public_html/cron/cron.php >/dev/null

我沒有收到任何說明 cron 已完成的電子郵件通知,我是否需要對 PHP 文件執行任何特定操作?

我使用此命令為此激活 cron 作業。

/usr/bin/php -q /home/username/public_html/yourfilename.php

在godaddy 服務器上,它工作正常。

在 crontab 系統中:

  • /usr/bin/php是 php 二進制路徑(在某些系統中不同,例如:freebsd /usr/local/bin/php ,linux: /usr/bin/php
  • /home/username/public_html/cron/cron.php應該是你的 php 腳本路徑
  • /dev/null應該是 cron 輸出,例如: /home/username/stdoutx.txt

所以你可以通過查看 cron 輸出/home/username/stdoutx.txt來監控你的 cron

>/dev/null阻止 cron 發送郵件。

實際上在我看來,最好讓php腳本本身來關心它的日志記錄,而不是僅僅輸出一些東西到 cron

這是最簡單的方法:

php -f /home/your_username/public_html/script.php

如果要將腳本輸出記錄到文件中,請將其添加到命令的末尾:

>> /home/your_username/logs/someFile.txt 2>&1

這是方法:

/usr/bin/php -q /home/username/public_html/yourfilename.php >/dev/null

這條 cron 線在使用 cpanel 的 hostgator VPS 上為我工作。

/usr/bin/php -q /home/username/public_html/scriptname.php

我在 CPanel 上使用 /usr/bin/php 時遇到問題,因為它被編譯為“cgi-fcgi”二進制文件而不是“cli”。 嘗試使用 /usr/local/bin/php 或者,因為它是路徑中的第一個,只需使用'php':

php /path/to/script.php

如果要將腳本作為可執行文件運行,請給它 +x perms 並使用以下內容作為腳本的第一行:

#!/usr/bin/env php

我希望您的問題也與路徑和 php 二進制文件有關。 如果您已按照舊答案修復了路徑,請在運行 cron 作業時使用 php-cli 而不是 php 命令。

php_sapi_name()可能沒有返回cli 它返回其他東西,如cgi-fcgi等。

/usr/bin/php-cli -q /home/username/public_html/cron/cron.php >/dev/null

我希望它會有所幫助。

這工作正常並且還發送電子郵件:

/usr/bin/php /home/xxYourUserNamexx/public_html/xxYourFolderxx/xxcronfile.php

以下兩個命令也可以正常工作,但不發送電子郵件:

/usr/bin/php -f /home/同上

php -f /home/同上

專家推薦。

/usr/local/bin/php /home/username/public_html/path/to/cron/script

其實很簡單,

php -q /home/username/public_html/cron/cron.php

對於特定於域的Multi PHP Cron Job ,請這樣做,

/usr/local/bin/ea-php56 /home/username/domain_path/path/to/cron/script

在上面的示例中,將“ea-php56”替換為分配給您要使用的域的 PHP 版本。

希望這可以幫助某人。

在 Hostgator CPANEL 上,這對我有用:

php /home/here_your_user_name/public_html/cronJob.php

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM