所以我现在花了大约 2-3 个小时,有时进行研究,我在网上发现了几个相同的答案,但似乎都不起作用!
我试图每分钟执行一个 PHP 脚本(作为测试),但它不起作用。
老实说,我不明白该脚本有什么问题。所以我去检查了日志,我得到了这个;
5 月 1 日 19:59:01在此命名crond[1112]: (系统) 重新加载 (/etc/crontab) 5 月 1 日 19:59:01在此命名crond[1112]: (CRON) 错误的用户名 (/etc/crontab)
我很困惑,任何帮助将不胜感激!
我已经安装了 LAMP 和 php-cli(如果有的话)。
编辑:
我终于让它执行了!感谢下面的海报!但是,我现在遇到了另一个问题,我收到一条错误电子邮件 ,我的脚本包含其他脚本,当我在 cPanel(共享主机)上时,它工作得很好,但现在不行,可能是什么问题?
答案1
您似乎有某个版本的 cron 需要user-name
在命令之前有一个参数。它甚至在标题中,只是一点点暗:
* * * * * <user-name> <command to be executed>
试试这个(用 php/apache 运行的任何用户替换 root):
* * * * * root /usr/bin/php /var/www/html/directory/file.php
另请注意,某些发行版具有单独的php.ini
配置,具体取决于它是通过命令行 (cli) 使用还是作为 apache 模块等使用。因此,如果您遇到更多问题,请确保您的php.ini
文件匹配(检查/etc/php
)。
更新
对于绝对工作路径,请像这样包含:
include __FILE__ . '../inc/databases.php';
请注意添加的内容__FILE__
,它返回当前运行脚本的绝对路径。您将必须更新所有include
和require
。