1

我正在尝试在一个单独的目录中为我的一些 php github 项目设置目录,然后在 web 文档根目录中创建指向它们的符号链接。

文档根目录是 /Users/aharris88/sites。我设置了这样的符号链接:

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

现在我有一个简单的 index.php 文件,其中包含以下代码:

<?php
echo "hello";
?>

但是当我去 localhost/~aharris88/tester 我得到一个 403 Forbidden 错误。当我转到 localhost/~aharris88 时,它没有与其他目录一起列出。

我去了 /etc/apache2/users 并添加了 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 安装一起工作呢?

4

1 回答 1

1

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

我使用以下代码创建了一个名为 whoami.php 的 php 文件:

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

我使用 mamp (localhost: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

这解决了我的问题。

于 2013-02-18T20:15:49.923 回答