我是提到的博客文章的作者。对于Web服务器文件权限,您需要为_www用户提供对文件的写入访问权限。对于config.inc.php文件,你会设置几个方面:
_www有自己的文件,并具有写权限:
$ sudo chown _www config.inc.php
$ chmod u+w config.inc.php
让您的用户拥有该文件,修改组_www,和给组写权限:
$ sudo chgrp _www config.inc.php
$ chmod g+w config.inc.php
或者,如果你感觉很舒服,允许所有用户来写,我不会建议为了安全起见,给所有用户写的能力:
$ chmod a+w config.inc.php
如果整个文件夹需要由_www用户写的,它可以将自己的文件夹下的所有文件:
$ sudo chown -R _www:_www folder/
,或者您可以通过所有给文件夹的写和执行权限:
$ chmod a+wx folder/
chmod 774
给你禁止错误的原因是因为_www用户属于“只读”权限的'4'。对于目录,用户需要'执行'才能遍历文件夹。 chmod 775
将允许用户和组rwx和其他人r-x。Here's more information on Unix file permissions。
此外,您的用户可以保留完全所有权并为_www用户添加某些权限,而不是通过使用访问控制列表更改所有用户的访问级别。
$ sudo chmod -R +a '_www allow read,write,delete,add_file,add_subdirectory,file_inherit,directory_inherit' folder
$ sudo chmod +a '_www allow read,write' config.inc.php
如果你打算去ACL的路线,我会建议做一些更多的阅读,看看有什么访问级别,你真的需要提供。 Here is a great place to start。
最简单的解决方案!用户和apache都可以在不更改权限的情况下获得写入/读取权限;-) –
为什么它将集团视为员工非常重要?我在Linux和Mac上工作,在Linux上,组是用户名,但在Mac上,我不得不退出员工,否则Apache将无法启动。 –
升级到macOS Sierra将httpd.conf中的'User'和'Group'值覆盖为'_www'和'_www'。您的答案帮助我解决了我遇到的权限问题,将相关目录的所有者设置为这些新值的“User”和“Group”。 – gmeben