我有以下问题:
我想让我的Apache访问index.html,它存在于由Vagrant创建的虚拟机上。目录由SSHFS使用-o allow_other选项挂载。
使用过的工具和版本是:
系统:Linux Ubuntu 15.04
Apache :2.4.12
通过SSHFS挂载,带-o allow_other
挂载过程正确,因为目录和文件在我的系统中可见。我可以打开/修改/等等。
但是当我尝试通过Apache打开这个文件时,我收到了
禁止
您无权访问此服务器上的/。
Apache / 2.4.12(Ubuntu)服务器位于xxx.yyy.com端口443
Apache的配置:
<Directory /var/www/interscape-frontend>
Options FollowSymLinks
Order allow,deny
Allow from all
Require all granted
</Directory>
DocumentRoot /var/www/interscape-frontend
有可能吗?如果是,那怎么样? :)
提前致谢!
答案 0 :(得分:0)
文件夹/文件的权限是什么?谁拥有它们?
如果您cd /var/www
和ls -al
出现了哪些字词?请参阅下面的示例。
-rw-rw-r--+ 1 (owner) (group) 277 Mar 16 00:31 build.xml
最左边的东西是所有者/群组/所有权限。之后,指示所有者和组。如果apache不是所有者(通常为www-data
),列出的组的一部分,或者文件不允许所有人都拥有rw
或rwx
,那么您可能会遇到问题你已经描述过了。
您可以分别使用以下命令更改所有者和组:
sudo chown -R (user) /path/to/directory
sudo chown -R (user):(group) /path/to/directory
-R
标志指示以递归方式执行(到所有子目录)。
此外,根据apache 2.4 upgrade guide,您可以从*.conf
中删除以下内容:
Order allow,deny
Allow from all
因为它们只适用于apache 2.2及以下版本。