Cronjob导致500内部服务器错误

时间:2014-11-02 21:40:44

标签: php cron internal-server-error

我正在我的服务器上运行CMS的演示。在此演示中,潜在客户可以尝试CMS的后端。这就是我创建一个删除整个CMS文件夹并将备份复制回其中的php脚本的原因。这样,每次运行脚本时,都会恢复演示站点。

但是,事实上,我正在通过cron工作找出如何做到这一点。 我使用的命令如下(我正在运行CentOS)。

0 * * * * php /home/USER/public_html/replaceCMS.php

这将替换文件夹中的所有文件,但也会导致500内部服务器错误。 当我使用浏览器运行脚本时,问题不会出现。

我还尝试将带有覆盖的.zip解压缩到demo文件夹中。使用cPanel的文件管理器来完成这一切,一切顺利。使用unzip -o命令执行此操作会导致相同的错误。

你们有谁知道怎么回事?

1 个答案:

答案 0 :(得分:0)

当作业以root用户身份运行时,这些文件很可能由root拥有,root与用户的Web服务器不同。因此,当您通过浏览器调用脚本时,它将使用Web服务器的用户上下文而不是root用户运行。

您可以通过在命令行上运行ls -l并查看使用cronjob运行它时的所有者与使用浏览器访问页面时的内容来验证这一点。