当PHP脚本通过/ user / bin / php运行时,Error_log不起作用

时间:2017-08-22 20:27:10

标签: php linux bash cron centos

我有一个运行bash文件的cron:

#!/bin/bash

for n in {1..10}; do
   /usr/bin/php /var/www/html/teste_sh.php v=$n &
done

但是在这个脚本teste_sh.php中,如果我执行了error_log,它就不起作用。

此文件夹的Error_log为空,但如果我运行http://localhost/teste_sh.php,则error_log正常工作!

在这种情况下,有没有办法让error_log工作?

感谢。

1 个答案:

答案 0 :(得分:1)

不完全清楚错误日志的位置,但是,这是一个权限问题。假设CRON是您用户的crontab,而不是root。

我会将您的用户放在与您的网络服务器相同的群组中,通常是www-data

然后,Web服务器和您在通过CRON执行时将处于同一组中。当然只需确保目录/ var / www / html与该组无关。

将您的用户添加到网络论坛:

sudo usermod -a -G www-data myusername

然后chown目录

sudo chown -R myusername:www-data /var/www/html

可能值得在[{3}}

上寻找答案