我刚刚将我的开发计算机从 Mac OS 10.5.8 (Leopard) 升级到 Mac OS 10.7.3 (Lion),这需要彻底清除磁盘。几年来,我一直使用 MAMP 在机器上运行开发服务器,并对 /et/hosts 和 httpd.conf 进行细微更改,以允许虚拟主机。我没有重新安装 MAMP,而是决定安装 MySQL 并配置 Lion 的原生 Apache 和 PHP 软件以满足我的开发需求,按照我在这里找到的说明。
一切都运行良好,直到我尝试进行一些自定义以模拟我习惯的开发环境。特别是,我需要:
- Apache 逐个站点执行任何自定义 .htaccess 指令
- 启用虚拟主机,以便我可以在自己定义的域中访问我的开发网站
- 将我的网站目录保留在
/Users/username/Dropbox/
而不是 在 中/Users/username/
以便自动同步
我不是 Apache 专家,每次我启用某个选项来使上述功能之一正常工作时,访问用户目录中的任何站点时都会导致 403 Forbidden 错误。我已阅读了 Superuser 和其他站点上的数十个帖子,并尝试了至少一百种 httpd.conf、extra/httpd-userdir.conf、extra/httpd-vhosts.conf 和 users/username.conf 的配置,但似乎都没有帮助。我还查看了错误和访问日志,但我不知道如何解释结果。
这超出了我的理解范围,如果能帮助我解决此问题,我将不胜感激。我不确定还有哪些信息可能有用。如果有人能给我提供一个简单的分步指南,说明如何在 OS 10.7 上为虚拟主机、.htaccess 和指定不同的站点目录配置 Apache,那就更好了。
编辑: 下面是当我将 users/username.conf 中的目录更改为 /Users/username/Dropbox/Sites/ 时出现的示例错误,但没有进行与 .htaccess 或虚拟主机相关的任何更改:
来自access_log:
127.0.0.1 - - [17/Apr/2012:16:45:11 -0400] "GET /~john HTTP/1.1" 403 207
来自错误日志:
[2012 年 4 月 17 日星期二 16:45:11] [错误] [客户端 127.0.0.1] 服务器配置拒绝客户端:/Users/john/Sites
答案1
您应该会在 apache 的 error.log 中看到浏览器收到的每个 4xx 和 5xx 错误。一旦您分享一行,我们也许能够更好地提供帮助。
使用 *BOX 同步配置/内容目录的正确方法是: http://hints.macworld.com/article.php?story=20090929052128498 或者那里: http://en.wikipedia.org/wiki/Comparison_of_Subversion_clients