我在玩apache的UserDir函数: http : //httpd.apache.org/docs/2.0/mod/mod_userdir.html
这是我的configuration:
<IfModule mod_userdir.c> UserDir enabled user UserDir public_html </IfModule> <Directory "/home/*/public_html"> AllowOverride FileInfo AuthConfig Limit Indexes Options MultiViews Indexes Allow from all Order deny,allow </Directory
它不断产生一个403错误的访问被拒绝。 直到我在/ home / user目录中添加可执行文件:
chmod 711 /home/user
public_html已经有了o + r,这对apache用户来说是合乎逻辑的读取内容,但是为什么需要将可执行文件添加到基础文件夹呢?
这一切都工作。 我只是好奇,为什么这是事实。
目录上的可执行位决定了目录遍历的权限。
根据FAQ
为了提供文件,Apache必须具有操作系统授予的适当权限来访问这些文件。 具体来说,httpd.conf中指定的用户或组必须能够读取所有将被提供的文件,并search包含这些文件的目录以及直到文件系统根目录的所有父目录
这只是能够打开目录来获取文件的性质。