使用Linux服务器shell命令在scedule上运行php脚本


Run php script at scedule using Linux server shell command

我的Linux服务器运行PHP和Apache。我想每天在某个时间运行一个.php文件。(将在服务器中自动运行)

我有两个文件:mail.php,它将邮件发送到myEmail@gmail.com。以及CCD_ 3,它包含一些调用CCD_。

bash.php包含:

<?php
    #!/usr/bin/php
    $command="52 14 * * * ./mail.php";
    $result=shell_exec($command);
    echo "<pre>$result</pre>"
?>

然后我在浏览器中运行bash.php

我没有收到错误消息。但不要收到任何电子邮件。哪里出了问题?

您正试图用php编写一个cron作业。

扔掉你的bash.php并将其转换为cron任务(crontab-e)。

php_mailer.cron:

52 14 * * * /usr/bin/php /path/to/mail.php

你不应该这样做,你所要做的就是使用命令crontab-e打开Cronjob配置文件,然后在其中添加命令行:

52 14 * * *  <path to>php <Full absolute Path>/mail.php

要知道您的php路径,请使用以下命令:

Which php

有关更多详细信息,您可以参考链接:Crontab Command