shell_exec无法从 crontab 工作


shell_exec wont work from crontab

我看过其他答案,它们不适合这种情况。我正在使用文件的完整路径。我复制的代码被简化了。

运行.php包含:

shell_exec("php /var/www/html/sync/chourly.php $position $quotientx > /dev/null 2>/dev/null &");

如果我使用手动php run.php - 效果很好。这是 crontab -e 上的行:

05 * * * *  /usr/bin/wget -O /dev/null http://sync.eeeww.com/run.php

再次文件运行.php开始但每小时.php不启动。我正在使用 centOS 6有什么建议吗?另外:我检查了我使用 ec2-user 运行 php 运行的权限.php并且 crontab 使用相同的权限。它能够运行该文件,但shell_exec是出现问题的地方

/var/www/html/sync/chourly.php 使用 $SERVER['DOCUMENT_ROOT'] 吗?由于您显式调用 php 解释器(而不是 mod_php),因此 '$SERVER['DOCUMENT_ROOT'] 调用将无法按预期工作。

尝试从 shell 手动运行 cron,看看它在哪里失败。

cd /
su - your_httpd_usersame -c "/usr/bin/wget -O /dev/null http://sync.bitpine.com/run.php"