2013-02-18 68 views
1

我试图在一个单独的目录中为我的一些php github项目设置目录,然后在web文档根目录中为它们创建符号链接。符号链接上的Mac Apache 403错误

文档根目录是/ Users/aharris88/sites。现在

ln -s ~/dropbox/github/tester/ ~/sites/tester 

对于我在这一个简单的index.php文件与此代码:我设置了这样的符号链接

<?php 
echo "hello"; 
?> 

,但是当我去到localhost /〜aharris88 /测试我得到403 Forbidden错误。 当我到localhost /〜aharris88它没有列出与其他目录。

我已经去到/ etc/apache2的/用户,并与下列新增aharris88.conf:

<Directory /Users/aharris88/Sites/> 
Options Indexes MultiViews FollowSymLinks 
AllowOverride All 
Order allow,deny 
Allow from all 
</Directory> 

我使用的股票OS X安装Apache,但是当我运行它的工作原理,而不是MAMP并转到localhost:8888/tester /。 那么我怎样才能使这个符号链接工作与股票OS X的Apache安装?

+0

您是否试图在股票OS X Apache安装或MAMP的Apache上执行此操作?如果前者,然后尝试停止MAMP,以确保您使用的Web服务器明确是MAC OS操作系统。 – halfer 2013-02-18 16:02:08

+0

我正在尝试使用股票OS X Apache安装。当它不工作时,我尝试了mamp,它工作。但是,是的,我总是停止mamp,当我想使用股票OS X Apache安装并运行sudo apachectl start时。 – aharris88 2013-02-18 16:06:31

+0

右键。我不特别关注这部分Apache - 我不使用用户目录。但是您可能会在手册的这一部分中找到一些线索:https://httpd.apache.org/docs/2.2/mod/mod_userdir.html。查看MAMP httpd.conf,看看里面是否有相关的指令? – halfer 2013-02-18 16:12:30

回答

1

该解决方案是基于@davidr评论:

我做了叫whoami.php用下面的代码的PHP文件:

<?php echo exec('whoami'); ?> 

我跑了甲基苯丙胺(本地主机此页:888 /whoami.php),然后用os x apache install(localhost /〜aharris88/whoami.php),因为符号链接使用了mamp而不是apache。

Mamp返回我的本地用户(aharris88)和Apache返回_www。这意味着_www无法访问符号链接指向的目录(〜/ Dropbox/github/tester)。

当我检查的权限,我注意到的Dropbox目录设定为700 aharris88,所以我将它设置为755

sudo chmod 755 dropbox 

和固定我的问题。

+0

Thx指出这是需要chmod 755的整个保管箱文件夹 – elmuchacho 2013-10-12 20:44:18