0

我正在尝试配置运行 Apache 和 Lasso 的 OSX Mavericks 服务器。为了安全和方便,我只希望属于特定“网络”组的用户能够访问网络根目录。我已经成功地让允许的普通用户和 Apache (_www) 访问这些文件,但我无法为 Lasso 设置正确的权限。我希望这里有人能指出我正确的方向。

基本上,我所做的如下:

sudo dseditgroup -o create web
sudo dseditgroup -o edit -a _www -t user web
sudo dseditgroup -o edit -a _lasso -t user web
sudo chgrp -R web webroot
sudo chmod -R 770 webroot

这显然适用于 Apache,但任何套索文件仅输出套索权限错误:

An unhandled failure during a web request
Error Code: 13
Error Msg: Permission denied - While opening //Library/Server/Web/Data/Sites/...

我还尝试将 _www 和 _lasso 组添加到 web 组,以及在实例管理器中创建一个新的 Lasso 实例,并将有效组设置为“web”。

奇怪的是,直接在文件上设置 _lasso 用户或组的权限(即不通过 web 组)似乎有效,这让我相信我创建 ACL 的方式有问题。

更多信息:

ls -l@e example.lasso
-rwxrwx---+ 1 danielpervan  web  0 Feb 19 15:20 example.lasso
 0: user:_spotlight inherited allow read,execute
4

1 回答 1

0

当我拥有超出标准 Unix 权限的 ACL 时,我遇到了类似的问题。从您的帖子来看,example.lasso 文件中似乎有一些 ACL。我将在您的 Web 根目录上运行以下脚本以从每个文件夹/文件中删除所有ACL:

sudo chmod -R -N /path/to/webroot/

如果这不起作用,请验证 _lasso 用户是否属于 web 组:

dscl . -read /groups/web | grep GroupMembership
于 2014-02-19T14:47:57.907 回答