403在OSX上使用Apache在localhost上禁止使用

时间:2014-08-10 19:05:41

标签: macos apache apache2 osx-mavericks http-status-code-403

很抱歉,如果这看起来微不足道,但问题一直困扰着我很长一段时间,而且我不确定在哪里调试它。在我的mac dev环境中访问localhost时,我得到403禁止。它是默认设置,因此应该从/ Library / WebServer / Documents /

提供

当我直接导航到该文件夹​​中的文件时,同样的错误。当我导航到我知道不存在的文件时,相同的错误

来自/private/etc/apache2/httpd.conf的值得注意的设置,它们似乎都是默认设置:

ServerRoot "/usr"
Listen 80
User _www
Group _www
DocumentRoot "/Library/WebServer/Documents"

<Directory />
    Options FollowSymLinks
    AllowOverride None
    Order deny,allow
    Deny from all
</Directory>

<Directory "/Library/WebServer/Documents">
    Options Indexes FollowSymLinks MultiViews
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

点击localhost似乎在/ var / log / apache2 / error_log中没有任何条目,但是如果我设置了一个新的vhosts条目:

<VirtualHost *:80>
    DocumentRoot "/Users/me/Dropbox/work/web/testsite.local"
    ServerName testsite.local
</VirtualHost>

...在主机中,将testsite.local发送到127.0.0.1,我在/ var / log / apache2 / error_log

中得到这个
(13)Permission denied: access to / denied (filesystem path '/Users/me/Dropbox/work') because search permissions are missing on a component of the path

真的让我很难过。谁能建议从哪里开始?

1 个答案:

答案 0 :(得分:1)

我对此持续了几个小时,最后在将我的设置与另一台机器进行比较后意识到我的httpd-vhosts.conf文件有显着差异。

在工作机器上,它有:

<VirtualHost *:80>
        DocumentRoot "/Library/WebServer/Documents"
</VirtualHost>

如果您使用vhosts,并且/private/etc/apache2/extra/httpd-vhosts.conf缺少该关键部分,您将很难解决localhost错误。