我最近安装了 Ubuntu 9.10(之前是 9.04)。我正在使用 Eclipse 运行本地开发环境,我的工作区位于 /home/jeremy/workspace。我使用 taskel 安装了 LAMP 服务器。我创建了一个指向工作区子目录的新虚拟主机:
/home/jeremy/workspace/mysite.com/httpdocs
请参阅下面有关我的虚拟主机文件的相关部分,该文件是我通过复制默认主机文件启动的。我尝试了所有我能想到的方法,但无论如何,我的 Apache 日志中都出现了 403 Forbidden 错误:
[客户端 127.0.0.1] (13)权限被拒绝:访问/被拒绝
我将 /home/jeremy/workspace/mysite.com 目录及其下面的所有内容的组设置为 www-data。我还将我的用户 (jeremy) 添加到该组。我首先尝试将该目录的权限设置为 755。没有成功。然后我采取极端措施,将其设置为 777,但仍然没有成功!有人知道这是怎么回事吗?这是 Ubuntu 9.10 上 Apache 的已知问题吗?我已在 hosts 文件中进行了相应的输入,因此我确信我正在本地访问它。
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName mysite.com
DocumentRoot /home/jeremy/workspace/mysite.com/httpdocs
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory "/home/jeremy/workspace/mysite.com/httpdocs/">
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
</VirtualHost>
答案1
检查从 /home/jeremy 开始的每个目录的权限,其中一个目录可能不允许访问 www-data。我知道在我刚刚安装的 9.10 中,主目录默认创建为 700,这肯定会限制这一点。