0

一个 php 文件(例如 example.php)应该将某些内容写入另一个文件(例如 alma.txt)。如果 example.php 通过 cron 作业运行,一切正常,但是当我通过浏览器调用它时,它不会写入 alma.txt。为什么?

4

1 回答 1

0

cron 作业在拥有已配置 cron 作业的 crontab 文件的用户下运行。

当您从 cron 守护程序运行 php 时,您的用户是执行命令的用户。

当您通过浏览器运行 php 脚本时。在 Web 服务器中,此脚本由启动 apache 进程的用户执行。例如,在 ubuntu 中是用户 www-data。

这看起来像文件权限问题。只是为了确保授予文件 alma.txt 的所有权限。

chmod 777 alma.txt

再试一次,如果一切正常,那就是权限问题,我会建议你为文件设置正确的权限。也许将组 www-data 添加到文件并授予 775 给它。

于 2012-11-01T19:06:30.557 回答