【发布时间】:2016-03-02 05:23:50
【问题描述】:
我正在尝试使用 crontab 执行 PHP 脚本,但它似乎不起作用。我正在运行 AWS EC2 Linux,这是 PHP 脚本:
FOREACH (GLOB("*.jpg") AS $filename) {
ECHO "$filename size " . FILESIZE($filename) . "\n";
UNLINK($filename);
}
FOREACH (GLOB("*.jpeg") AS $filename) {
ECHO "$filename size " . FILESIZE($filename) . "\n";
UNLINK($filename);
}
FOREACH (GLOB("*.gif") AS $filename) {
ECHO "$filename size " . FILESIZE($filename) . "\n";
UNLINK($filename);
}
FOREACH (GLOB("*.png") AS $filename) {
ECHO "$filename size " . FILESIZE($filename) . "\n";
UNLINK($filename);
}
当我从浏览器手动执行此脚本时,它可以正常工作。但是使用 crontab 不起作用
这是我的 cron 命令:
00 * * * * php /var/www/html/*****/*****/delete.php
这是日志:
11 月 28 日 02:12:01 ip-##-##-##-## CROND[#####]: (root) CMD (/usr/bin/php /var/www/html/*****/*****/delete.php)
我可能做错了什么?
【问题讨论】:
-
您对 glob 的调用没有指定完整的目录路径,因此他们正在当前目录中查找文件,您可能需要确保脚本在正确的当前目录下运行。例如
00 * * * * cd <some-directory> && php /var/www/html/*****/*****/delete.php
标签: php amazon-web-services amazon-ec2 cron