macos - 在Mac OS X下更正Apache 2站点文件/文件夹的所有者/组/权限?

在网上很难找到针对这个问题的Mac特定答案,所以我希望那里有人能为我安排这个问题吗? 我的权限被搞砸了我的网站,我不知道如何解决它们而不仅仅在一切明显不正确的情况下抨击递归777。

谢谢!

Fo. asked 2019-07-13T21:22:23Z
7个解决方案
180 votes

这是我发现的最严格和最安全的方式,如此处针对您的Web内容的假设chmod -R g+rx ~/my/web/root目录所述:

  • 对于通向您的Web根目录的每个父目录(例如,chmod -R g+rx ~/my/web/root,~/my/web,~/my/web/root):
    • chmod -R g+rx ~/my/web/root(除了所有者以外的任何人都可以访问内容)
    • chmod -R g+rx ~/my/web/root(允许“用户”包括_www“输入”目录)
  • chmod -R g+rx ~/my/web/root(所有网站内容现已成为群组_www)
  • chmod -R g+rx ~/my/web/root(除了所有者以外的任何人都可以访问网站内容)
  • chmod -R g+rx ~/my/web/root(所有网页内容现在都可读/可执行/可由_www进行)

所有其他解决方案都将文件保留给其他本地用户(他们是“工作人员”组的一部分,以及显然属于“o”/其他组)。 然后,这些用户可以自由浏览和访问Web配置文件和脚本中的数据库配置,源代码或其他敏感详细信息(如果这些是您的内容的一部分)。 如果这对您来说不是问题,那么请务必使用一个更简单的解决方案。

dkamins answered 2019-07-13T21:23:27Z
29 votes

如果你真的不喜欢终端这里是做dkamins的GUI方式告诉你:

1)转到您的用户主目录(ludo将是我的),然后从文件菜单中选择检查器中的获取信息cmdI:

Get Info window Sharing & Permissions section

2)通过alt / option单击[+]符号添加_www组并将其权限设置为只读:

Get Info add Users & Groups highlighted and World Wide Web Server highlighted

  • 因此,考虑(良好实践)不将个人信息存储在用户主文件夹(&硬盘)的根目录中!
  • 如果** everyone **组具有**只读**权限,你可以跳过这一步,但是因为AirDrop ** / Public / Drop Box **文件夹几乎没用...

3)显示用户站点文件夹的“获取信息”检查器并重现步骤2,然后从齿轮操作子菜单中选择“应用于附带的项目...”:

Get Info action sub-menu Apply to enclosed Items... highlighted

Voilà3步骤和GUI唯一的方式...

llange answered 2019-07-13T21:24:32Z
12 votes

我知道这是一个旧帖子,但对于任何升级到Mountain Lion(10.8)并遇到类似问题的人来说,将FollowSymLinks添加到您的{username} .conf文件(在/ etc / apache2 / users /中)对我来说是个窍门。 所以文件看起来像这样:

<Directory "/Users/username/Sites/">
  Options Indexes MultiViews FollowSymLinks
  AllowOverride All
  Order allow,deny
  Allow from all
</Directory>
mjswensen answered 2019-07-13T21:24:57Z
9 votes

2个月大的线程,但迟到总比没有好! 在10.6上,我将我的webserver文档文件夹设置为:

owner:root
group:_www
permission:755

_www是在Mac OS X下运行apache的用户。然后我添加了一个ACL以允许管理员组的完全权限。 这样,我仍然可以使用我的管理员用户进行任何更改,而无需以root身份进行身份验证。此外,当我想允许web服务器写入文件夹时,我可以简单地chmod到775,除了root:_www之外的所有人只有读/执行权限(不包括我已应用的任何ACL)

Tim Mackey answered 2019-07-13T21:25:29Z
4 votes

在我的10.6系统上:

vhosts folder:
 owner:root
 group:wheel
 permissions:755

vhost.conf files:
 owner:root
 group:wheel
 permissions:644
Steve Graham answered 2019-07-13T21:25:53Z
0 votes

我的用户所有者是管理员用户,该组是_www,并使用权限设置为775为dir和文件664

michalzuber answered 2019-07-13T21:26:18Z
-2 votes

首先打开终端,然后转到Web服务器目录

cd /Library/WebServer/Documents

然后键入此以及您将执行的操作是您将给予readwrite权限

sudo chmod -R o+w /Library/WebServer/Documents

这肯定会奏效!

Sidharth kaushik answered 2019-07-13T21:26:56Z
translate from https://stackoverflow.com:/questions/2001881/correct-owner-group-permissions-for-apache-2-site-files-folders-under-mac-os-x