我在我的 opensolaris 服务器上安装了 apache2 并启用了 mod_userdir,但是当我浏览到 ~userdir 时,尽管 public_html 设置为全球可读,仍然出现 403 错误,我该如何修复它?
答案1
public_html 不仅需要可供全世界读取,而且 apache 还必须具有进入 /home/ 的权限用户名(父目录)也是如此。我敢打赌,用户的主目录只属于他们自己,权限为 700。这至少需要是 701。
如果日志没有出现任何内容,有人教我一个小窍门:
暂时为运行 Apache 的用户设置一个您选择的实际登录 shell。一步一步浏览到 public_html 目录。
cd /
cd home
cd username
cd public_html
任何出错的地方都是 403 的来源。
当你完成确保从 APACHE 中删除登录 Shell。
答案2
检查您的 error_log 文件以查找确切的错误,它应该准确地告诉您 Apache 尝试访问以提供数据的位置。如果那不是您期望的位置,请检查您的 mod_userdir 配置。
答案3
我忘记在 httpd.conf 中设置目录权限,所以我把
<Directory "/home">
AllowOverride None
Options None
Order allow,deny
Allow from all
</Directory>
到我的 httpd.conf 文件并且它起作用了