在你开始责怪我不应该 chmod 777 之前,这与许多其他主题中的内容有很大不同。
现在的情况是,我无法从网络访问此目录(/var/lib/folder/
),但我希望 PHP 能够访问它,以便它可以读取、写入并从目录执行。
一个简单的解决方案是 chmod(以 root 身份),777 该文件夹,但问题来了。 另一位用户(例如 John)向该目录写入数据。任何人都知道,John 编写的文件使他有权成为所有者,因此 PHP 不是所有者。不知何故,John 编写的文件总是变成 755 而不是 777(因此 PHP 无法访问)。
有没有办法:
- 让 John 在 777 中始终写入该目录
或者
- 创建该目录,以便 PHP 可以完全访问 John 编写的所有文件。
最佳答案
您不需要 chmod。
在目录上设置 ACL:
setfacl -R -d -m u:php:rwx /var/lib/folder/
这为用户提供了新文件的 php rwx 权限(-d = 默认值)。
您可以使用以下方法更改文件夹中现有文件的 ACL:
setfacl -R -m u:php:rwx /var/lib/folder/
关于php - 如何永久 chmod 777 PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18161184/