其他目录中的 XAMPP VirtualHost 出现 403 禁止错误

其他目录中的 XAMPP VirtualHost 出现 403 禁止错误

我已经根据此网站创建了一个 virtualHost 设置: https://ourcodeworld.com/articles/read/302/how-to-setup-a-virtual-host-locally-with-xampp-in-ubuntu

这部分设置显然是可行的。但是,我希望将项目文件夹放在 htdocs 以外的其他位置,以便工作内容可以与我的其他文档一起自动备份到云中。

VirtualHost 文件如下所示:

<VirtualHost 127.0.0.2:80>
    DocumentRoot "/home/dave/Dropbox/Documents/Projects/MyApp"
    ServerName lcover.local
    DirectoryIndex index.html

    <Directory "/home/dave/Dropbox/Documents/Projects/MyApp">
        Options All
        AllowOverride All
        Require all granted
    </Directory>
    ErrorLog "logs/lcover.local-error_log"
    CustomLog "logs/lcover.local-access_log" common
</VirtualHost>

当我去http://lcover.local,我收到 403 错误。

我很确定这是一个所有者/权限问题,并且我尝试了几种组合但无法使其工作。

我应该如何设置目录和文件的权限?

答案1

为了对文件具有可读访问权限,用户(任何用户)还必须对父目录的整个路径具有读取-执行权限。用户主目录及其内部文件的典型/默认权限为:

  • drwxr-xr-x(或755八进制)用于目录和
  • -rw-r--r--(或644)用于文件。

这意味着所有other用户(第三个三位一体或八进制中的第三位)都对每个用户的主目录(以及里面的常规文件)具有可读访问权限。

在这些情况下,我们假设 Apache 的用户不是所讨论的项目,但成员用户other(当然)无法从目录中读取文件~/Dropbox/Documents/Projects/MyApp,我们想要改变这种状况 - 步骤如下:

# Grant to `other` users read-execute permissions for the path
chmod o+rx ~/Dropbox ~/Dropbox/Documents ~/Dropbox/Documents/Projects

# For the next levels we can apply the permissions recursively 
find ~/Dropbox/Documents/Projects/MyApp -type d -exec chmod o+rx {} \;
find ~/Dropbox/Documents/Projects/MyApp -type f -exec chmod o+r {} \;

相关内容