php写入文件权限问题

问题描述 投票:1回答:2

当php-script尝试写入文件时:

-rwxr-xr-x.  1 eugene_val eugene_val  8033 Sep 10 10:47 ajax_EN.json

我收到一个错误:

fopen(ajax_EN.json): failed to open stream: Permission denied

我想知道在考虑安全性的情况下,什么是适当的解决方案。我能想到的选择是:

1)将此文件chown给apache用户并将其chmod为700

2)将apache添加到文件所有者的组中

3)使用suPHP和喜欢(由于性能打击我不喜欢)

php file permissions fopen
2个回答
0
投票

此文件的路径权限也很重要。即使你chmod 777该文件,如果试图读取它的用户没有该路径的读权限,他们仍然无法读取该文件。


3
投票

更好的选择是将文件的组更改为Apache用户组,并将文件设置为可写组:

$ chgrp <apache_group> ajax_EN.json
$ chmod g+w ajax_EN.json
© www.soinside.com 2019 - 2024. All rights reserved.