Apache简单configuration问题:设置每用户目录权限被拒绝的问题

我只是在Fedora 13 Beta 64位上运行Apache 2.2。 我遇到了设置我的每个用户目录的问题。 目标是使localhost /〜用户映射到/ home /〜user / public_html。 我认为我有权限,因为我有755到/ home /〜用户,我有755到/ home /〜user / public_html /和我有777 / home /〜user / public_html /recursion的所有内容组。

我的mod_userdirconfiguration如下所示:

<IfModule mod_userdir.c> # # UserDir is disabled by default since it can confirm the presence # of a username on the system (depending on home directory # permissions). # UserDir disabled root UserDir enabled huckphin # # To enable requests to /~user/ to serve the user's public_html # directory, remove the "UserDir disabled" line above, and uncomment # the following line instead: # UserDir public_html 

我在错误日志中看到的错误是这样的:

 [Sat May 15 09:54:29 2010] [error] [client 127.0.0.1] (13)Permission denied: access to /~huckphin/index.html denied 

当我作为apache用户login时,我知道/〜huckphin不存在,这不是我想要的。 我想要访问〜huckphin,而不是/〜huckphin。 我需要更改我的configuration才能正常工作?

[评论后添加]

嗨安多,谢谢你的build议。 所以,首先,你说你认为我已经启用了userdir模块,但我不确定这意味着什么。 这可能是问题的一部分。

我有使用LoadModule指令加载模块。 我有这个:

 LoadModule userdir_module modules/mod_userdir.so 

我也find了哪里mod_userdir,我发现它位于这里:

 [huckphin@crhyner-workbox]/% find / . -name '*mod_userdir.so*' 2> /dev/null /usr/lib64/lighttpd/mod_userdir.so /usr/lib64/httpd/modules/mod_userdir.so 

还有什么我需要启用?

另外,我的目录configuration被提及。 我已经取消了给定的默认configuration。 我没有看到所有的configuration是什么意思,这可能可以解释这个问题。 这是我有用户目录的目录:

 <Directory "/home/*/public_html"> AllowOverride FileInfo AuthConfig Limit Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec <Limit GET POST OPTIONS> Order allow,deny Allow from all </Limit> <LimitExcept GET POST OPTIONS> Order deny,allow Deny from all </LimitExcept> </Directory> 

实际上,当Apache在其日志文件中引用/〜foo /时,它指的是url,而不是文件系统path。 换句话说,没有任何暗示它看错了地方。

我假设你也启用了userdir模块,而不仅仅是configuration? 那么/ home / * / public_html的目录configuration呢? 另外,/ home的文件系统权限呢?

我有点不高兴 我find了答案,但这只是一个猜测。 果然,没有任何关于我的configuration是不正确的。 我停止SELinux进入系统 – >pipe理 – > SELinuxpipe理(我使用GNOME的窗口pipe理器,顺便说一句),并closuresSELinux,我能够查看我的用户目录网页。

所以,我发现SELinux导致了这个问题。 我不确定我是否想要通过SELinux来执行策略。 我认为这可能是另一个线索,但我发现了这个问题!

不过谢谢您的帮助。 这让我思考一个不同的方向,这帮助我得出这个结论! 我感谢帮助!