118

在网上很难找到这个问题的 Mac 专用答案,所以我希望有人可以为我解决这个问题?我的权限在我的网站上被搞砸了,我不确定如何修复它们,而不仅仅是在所有明显不正确的东西上猛烈抨击递归 777。

谢谢!

4

8 回答 8

187

这是我发现的最严格和最安全的方式,正如此处~/my/web/root/为您的 Web 内容的假设目录所解释的那样:

  • 对于通向您的 Web 根目录的每个父目录(例如~/my~/my/web~/my/web/root):
    • chmod go-rwx DIR(所有者以外的任何人都不能访问内容)
    • chmod go+x DIR(允许包括_www在内的“用户”“进入”目录)
  • sudo chgrp -R _www ~/my/web/root(所有网页内容现在都是组_www)
  • chmod -R go-rwx ~/my/web/root(所有者以外的任何人都不能访问网页内容)
  • chmod -R g+rx ~/my/web/root(所有网页内容现在都可由_www 读取/执行/输入)

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

于 2011-06-21T02:22:56.070 回答
32

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

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

获取信息窗口共享和权限部分

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

获取信息添加突出显示的用户和组并突出显示万维网服务器

  • 因此考虑(良好做法)不要将个人信息存储在用户主文件夹(和硬盘)的根目录!
  • 如果 **everyone** 组具有 **read-only** 权限,您可以跳过此步骤,但由于 AirDrop **/Public/Drop Box** 文件夹几乎没有用...

3)显示您的用户站点文件夹的获取信息检查器并复制步骤 2,然后从齿轮操作子菜单中选择应用到封闭的项目...

获取信息操作子菜单 适用于封闭项目... 突出显示

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

于 2014-03-01T15:30:03.690 回答
13

我知道这是一篇旧帖子,但是对于升级到 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>
于 2012-12-27T21:11:48.480 回答
10

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

owner:root
group:_www
permission:755

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

于 2010-03-05T17:45:02.333 回答
5

在我的 10.6 系统上:

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

vhost.conf files:
 owner:root
 group:wheel
 permissions:644
于 2010-01-04T20:24:57.273 回答
0

我的用户所有者是管理员用户,组是 _www,并且对于目录和文件 664 的权限设置为 775

于 2011-06-17T11:40:44.143 回答
0

Catalina 更新/桌面权限

我每年在 macOS 上遇到一次。我通常使用 apache2 在我的桌面上托管一个文件夹。

如果您尝试授予对desktop文件夹的访问权限,则需要按照此操作以允许 httpd 访问所有文件夹:https ://apple.stackexchange.com/a/373139/353465

于 2019-11-17T18:25:37.397 回答
-3

首先打开终端,然后进入网络服务器目录

cd /Library/WebServer/Documents

然后输入这个,你会做的是你会给予readwrite许可

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

这肯定会奏效!

于 2016-01-23T13:32:38.743 回答