Apache Documentroot访问被禁止

运行Arch Linux我试图让Apache使用/ www(不是/ var / www)作为DocumentRoot。 / www是到/ home / user / www的软链接。 但是,我不断收到“访问禁止”的错误。 //home文件夹是不同分区的一部分。 这可能是问题吗?

我已经排除了一个问题:

  • CHMOD权限问题。 所有目录都有777个,由Apache拥有。 符号链接也是如此。
  • FollowSymLinks选项工作正常。 如果我链接/ www到/ srv / http它确实工作。 只有当我指向它停止工作的/ home /文件夹。

Apache错误日志中的确切错误是:

[Sun Oct 23 09:52:24 2011] [error] [client 127.0.0.1] Symbolic link not allowed or link target not accessible: /www

我用strace来看看是否会提供一些有用的东西,但没有提供任何线索。

任何人有任何想法? 如果问题确实是符号链接指向另一个分区上的文件夹,是否有一些解决方法?

这听起来像你需要设置文档根的FollowSymLinks

SELinux是否处于活动状态?

你可能有这个家伙的问题:

http://lwn.net/Articles/289365/

你需要告诉Apache可以使用该目录:

 <Directory /home/user/www/> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all </Directory> 

如果不是这样,则可能是//home/user之间的目录上缺lessx位。 chmod a+x /home/user应该在那里帮忙。