php - Cronjobs 不执行 php 脚本,没有收到 mailto 警告!

标签 php cron crontab

这是我的情况:

我正在尝试通过 cron 运行 php 脚本,我有一个 crontab (/etc/crontab),如下所示:

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/var/www:
MAILTO=<myemailaddress>

m h dom mon dow user  command

*  *    * * *   root    /usr/bin/php /var/www/testing.php

当我从 bash/sh 运行命令 /usr/bin/php/var/www/testing.php 时,一切都很好。它只是一个基本的 php 脚本,可以将一些乱码写入文件。但是,我的 cronjob 没有执行。我已经多次使用 sudo service cron restart 但都无济于事。我在这里遗漏了什么明显的东西吗?

谢谢,干杯!

解决方案

我的错!我正在运行的 php 脚本正在写入一个未正确访问的文件 - 例如,缺少完整的文件路径。感谢大家的帮助!

最佳答案

创建一个 shell 脚本并将 PHP 命令放入其中。使其可执行并将其放入 crontab。

然后您可以更好地跟踪和更改命令,并更轻松地为 php 脚本设置环境(变量、路径)。

关于php - Cronjobs 不执行 php 脚本,没有收到 mailto 警告!,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5784573/

相关文章:

php - 为什么我的 Laravel 队列作业在 60 秒后失败?

linux - 脚本未通过 crontab 运行

linux - cron 的替代品?

mysql - 从 crontab 运行存储过程

sh - 如何将 stderr 重定向到 cron 作业中的文件

php - ssh 或 cURL 将数据发送到远程服务器

php - Codeigniter $this->db->insert_id() 在 mysqli 上返回 0 但 $this->db->query ('SELECT LAST_INSERT_ID()' ) 有效

linux - 是否可以创建每 5 小时 30 分钟运行一次的 crontab

cron - 使用 Upstart 代替 cron

java - 为什么 Java 和 PHP 中的 Blowfish 输出仅相差 2 个字符?