OSX本地环境中的Symfony2权限问题

时间:2012-11-25 23:31:15

标签: php macos apache symfony permissions

我想尝试OSX Mountain Lion附带的本地apache环境。

我做了基本设置并将项目放在根目录

/Library/WebServer/Documents/

在我的浏览器中跳过了太本地主机,一切都按预期工作。

然而,为了简单起见,我决定按照本指南使用我的主目录中的Sites文件夹。

http://osxdaily.com/2012/09/02/start-apache-web-server-mac-os-x/

然后我重置了apache并将其添加到我的浏览器

http://127.0.0.1/~bengibson/PracTest/

浏览器显示项目文件夹中的一些文件和目录的列表,但不是全部:S。

我尝试导航到其中一个丢失的文件夹

http://127.0.0.1/~bengibson/PracTest/web/app_dev.php

但是我得到一条禁止的信息:(

任何人都知道这需要什么?

这里仅供参考,是项目文件夹

enter image description here

下面是终端

中文件夹的详细视图

enter image description here

以下是浏览器中显示的内容

enter image description here

3 个答案:

答案 0 :(得分:2)

我在OS X上遇到这个问题,当时我直接在浏览器中下载了Symfony 2 Standard Edition的存档文件。

权限表末尾的@符号表示该文件具有其他属性。 您可以在终端中键入以下命令作为示例来查看这些附加属性,解释为here

$ xattr -l ~/Sites/PracTest/web/app_dev.php

返回的结果是com.apple.quarantine。 这就是OS X保护从互联网上下载的潜在恶意文件无法随时可用的方式,这就是为什么在Finder中您会收到警告框,提醒您打开从互联网下载的文件。

在您的情况下,要删除这些扩展属性,请运行

$ xattr -rd com.apple.quarantine ~/Sites/PracTest

如果您想知道此命令的作用:

-d标志删除后面指定的扩展属性,后跟路径。 -r标志在所有子文件夹和文件上递归递送。

您现在应该可以在浏览器中访问app.php和app_dev.php。

我还想借此机会建议使用Composer创建一个新的Symfony2项目,而不是直接下载它。回头看很难。

答案 1 :(得分:1)

对于可能发生在这个博客上的任何人,我遇到了类似的问题,经过一番调查后发现我忘记了username.conf文件中的'FollowSymLinks'选项

答案 2 :(得分:0)

听起来像是权限。

右键单击文件夹,获取信息,使用右下角的管理员密码解锁,并使所有用户都能够读写。然后单击它下面的齿轮查看菜单并告诉它也适用于其中的所有内容。