当我尝试从我的主文件夹中获取文件内容时,权限被拒绝

时间:2012-05-23 13:54:36

标签: php linux permissions

我使用名为system_user的系统用户运行cron作业,然后将cron作业保存到system_user的主文件夹outputFile.txt中的文件/home/system_user/outputDir/outputFile.txt

这一切都有效,但现在我需要在我的php脚本中访问这个文件,该脚本位于/var/www/html/scripts/phpScriptFile.php,我收到了一个权限被拒绝的错误。

我发现php脚本是与apache用户一起运行的,所以我这样做了:

sudo chown system_user:apache outputFile.txt

但这没有用。

如果cron在let {'1}}文件夹中输出文件,那么我不会收到此权限错误。

我试图将我的outputFile.txt移出/ var / www / html文件夹的原因是,如果我离开它,那么可以通过http协议访问它,我不希望任何人看到这个内容文件。

请告知。

2 个答案:

答案 0 :(得分:1)

outputFile.txt有哪些权限?

sudo chown system_user:apache outputFile.txt

将system_user作为所有者,但将组更改为apache。要使其工作,该文件必须至少为rw-r-----,这可以通过chmod 640 outputFile.txt来完成。

答案 1 :(得分:1)

在包含该文件的文件夹中,某些权利可能不正确。

此外,apache用户的组可能未命名为apache,或组权限未正确分配。

重新分配您的用户组:

sudo chown system_user:system_user outputFile.txt

并测试给予整个路径的一般读取权限:

chmod o+rx /home/system_user
chmod o+rx /home/system_user/outputDir
chmod o+r /home/system_user/outputDir/outputFile.txt

如果这样做(应该这样做),那么您可以尝试调查组名是否正确移动对组部分的访问权限。