我知道这个问题经常被问到,但是我看到的解决方案对我没有用。
我只启用了一个虚拟主机,并且试图启用对不在文档根目录下的文件夹的访问
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
Alias /movies /home/username/Videos/Movies
<Directory /home/username/Videos/Movies/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
我设定/etc/apache2/envvars
如下
export APACHE_RUN_USER=www-data
export APACHE_RUN_GROUP=public
我确保/ home / username / Videos /及其子文件夹归所有者所有username:public
,将权限设置为777(在775不起作用之后),并确保该用户www-data
属于group public
。
现在,当我浏览到http://localhost/movies
我得到
[Mon Apr 21 11:28:14.971844 2014] [core:error] [pid 1385:tid 140067725104896] (13)Permission denied: [client 127.0.0.1:46603] AH00035: access to /movies/ denied (filesystem path '/home/username/Videos') because search permissions are missing on a component of the path
但是当我设置/etc/apache2/envvars
以username
(我自己的用户名)运行Apache时,一切正常。问题是与权限有关,但我不知道如何处理;尤其是当我将权限设置为时777
。有任何想法吗?
PS Ubuntu版本是14.04,Apache版本是2.4.7,我没有编辑其他配置文件。
/home
启用ACL 挂载的机会?(在这种情况下,权限位的末尾会有一个“ +”号(请选中ls -l
))