繁体   English   中英

手动运行时php脚本有效,但仅部分用作cron作业(不会将文件写入目录)

[英]php script works when manually run but only partially works as cron job (will not write files to directory)

首先,我将从总体上说我对Linux非常陌生。 我所拥有的是我写的一个php脚本,该脚本从reddit.com上的帖子中获取图像,然后隐藏该帖子并将链接添加到数组中,然后将所有图像保存在数组中。 当我以root身份输入类似“ php cron.php”的命令时,它运行良好,但是无论何时crontab运行它,脚本都只会隐藏所有帖子,而从不保存图像。 对我来说,这听起来像是cron用户的权限问题。 我已经搞砸了好几个小时,最近用www.data用户的crontab对其进行了更改:“ su -l www-data -c'crontab -e'”,但仍然没有雪茄,因为它是一项cron工作,我想它是无声运行的,没有给我任何错误。 如果有人可以告诉我如何显示这些消息,那肯定会帮助调试。 谢谢。

您正在自己下运行php cron.php,但是cron在其他用户下运行,即使您尝试在www-data下运行它,您仍然是与您不同的用户

简单的解决方案:检查php尝试写入的文件夹的权限,将其设置为0777进行测试,检查cron脚本是否成功

那么您可以有不同的选项,例如-将文件夹的所有者设置为cron并设置0755或将cron用户移至与您相同的组

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM