使用CPanel在cron作业中运行PHP文件

使用CPanel在cron作业中运行PHP文件,php,cron,cpanel,Php,Cron,Cpanel,我只是尝试在CPanel中使用cron作业运行PHP脚本-这是正确的语法吗: /usr/bin/php -q /home/username/public_html/cron/cron.php >/dev/null 我没有收到任何说明cron已完成的电子邮件通知,是否需要对PHP文件执行任何特定操作?/dev/null阻止cron发送邮件 事实上,在我看来,最好让php脚本本身关注它的日志记录,而不是仅仅向cron输出一些东西/dev/null阻止cron发送邮件 实际上,在我看来,最好让

我只是尝试在CPanel中使用cron作业运行PHP脚本-这是正确的语法吗:

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

我没有收到任何说明cron已完成的电子邮件通知,是否需要对PHP文件执行任何特定操作?

/dev/null
阻止cron发送邮件


事实上,在我看来,最好让
php
脚本本身关注它的日志记录,而不是仅仅向cron输出一些东西

/dev/null
阻止cron发送邮件

实际上,在我看来,最好让
php
脚本本身关注它的日志记录,而不仅仅是在crontab系统中向cron输出一些东西:

  • /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
因此,您可以通过在crontab系统中查看cron输出
/home/username/stdoutx.txt

来监视cron:

  • /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输出来监视cron
/home/username/stdoutx.txt

我使用此命令为此激活cron作业

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

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

我使用此命令为此激活cron作业

/usr/bin/php -q /home/username/public_html/yourfilename.php
在godaddy服务器上,其工作正常。

以下是方法:

/usr/bin/php -q /home/username/public_html/yourfilename.php >/dev/null
这是一种方式:

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

这是最简单的方法:

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

如果要将脚本输出记录到文件中,请将以下内容添加到命令末尾:


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

这是最简单的方法:

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

如果要将脚本输出记录到文件中,请将以下内容添加到命令末尾:


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

我在CPanel上使用/usr/bin/php时遇到问题,因为它被编译为“cgi fcgi”二进制文件而不是“cli”。尝试使用/usr/local/bin/php,或者,因为它是路径中的第一个,所以只需使用“php”:

php /path/to/script.php
如果要将脚本作为可执行文件运行,请将其设为+x perms,并将以下内容用作脚本的第一行:

#!/usr/bin/env php

我在CPanel上使用/usr/bin/php时遇到问题,因为它被编译为“cgi fcgi”二进制文件而不是“cli”。尝试使用/usr/local/bin/php,或者,因为它是路径中的第一个,所以只需使用“php”:

php /path/to/script.php
如果要将脚本作为可执行文件运行,请将其设为+x perms,并将以下内容用作脚本的第一行:

#!/usr/bin/env php

这条cron线路使用cpanel在hostgator VPS上为我工作

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

这条cron线路使用cpanel在hostgator VPS上为我工作

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

我希望您的问题也与path和php二进制有关。 如果您已经按照以前的答案修复了路径,请在运行cron作业时使用php cli而不是php命令

可能是
php\u sapi\u name()
没有返回
cli
。它返回的是类似于
cgifcgi
等的其他内容

/usr/bin/php cli-q/home/username/public\u html/cron/cron.php>/dev/null


我希望它会有所帮助。

我希望您的问题也在于path和php二进制文件。 如果您已经按照以前的答案修复了路径,请在运行cron作业时使用php cli而不是php命令

可能是
php\u sapi\u name()
没有返回
cli
。它返回的是类似于
cgifcgi
等的其他内容

/usr/bin/php cli-q/home/username/public\u html/cron/cron.php>/dev/null


我希望它能有所帮助。

这很好,还可以发送电子邮件:

/usr/bin/php/home/xxYourUserNamexx/public\u html/xxYourFolderxx/xxcronfile.php

以下两个命令也可以正常工作,但不发送电子邮件:

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


php-f/home/同上

这可以正常工作,还可以发送电子邮件:

/usr/bin/php/home/xxYourUserNamexx/public\u html/xxYourFolderxx/xxcronfile.php

以下两个命令也可以正常工作,但不发送电子邮件:

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


php-f/home/同上

由专家建议。

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

专家建议。

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

对于特定于域的多PHP Cron作业,请执行以下操作:

/usr/local/bin/ea-php56 /home/username/domain_path/path/to/cron/script
在上面的示例中,将“ea-php56”替换为分配给您希望使用的域的PHP版本


希望这对某人有所帮助。

对于特定于域的多PHP Cron作业,请这样做

/usr/local/bin/ea-php56 /home/username/domain_path/path/to/cron/script
在上面的示例中,将“ea-php56”替换为分配给您希望使用的域的PHP版本


希望这对别人有帮助。

其实很简单

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

其实很简单,

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

在Hostgator CPANEL上,这对我很有用:

php /home/here_your_user_name/public_html/cronJob.php

在Hostgator CPANEL上,这对我很有用:

php /home/here_your_user_name/public_html/cronJob.php

我现在正在使用它,它工作,但我没有收到任何电子邮件通知任何想法为什么不?php/home/username/public_html/cron/cron.php注意,我不得不在php脚本的顶部添加以下行#/usr/bin/php-qi如果你想让cronjob为你发送电子邮件,你必须使用php mail(),我认为cronjob没有自动邮件系统,除非你使用shell脚本或php。当我点击cPanel中的“cronjobs”选项卡时,页面上有两个框-一个框用于你想要发送的命令