如何在 apache - centos 中添加 /home/user/public_html 作为虚拟主机

如何在 apache - centos 中添加 /home/user/public_html 作为虚拟主机

在 Directadmin(我以前用过)中,当我们创建经销商时,会创建一个具有主目录的新用户,用户可以在主目录中添加域,例如 /home/user/domains/example.com/public_html

如何将 /home/user/public_html 作为虚拟主机添加到 apache web 服务器?我想像直接管理员一样配置 apache 以使用主目录。

我是 Centos 6.5 新手,正在尝试配置 Web 服务器。我的操作系统很干净(没有任何配置,只有 DNS),并且 SElinux 在 /etc/sysconfig/selinux 中被禁用。我的 VPS 有一个 IP。

现在我的 httpd 配置如下。

<VirtualHost domain-1.com:80>
    DocumentRoot /home/user/domains/domain-1.com/public_html
    ServerName domain-1.com
</VirtualHost>

当我添加此配置时,我得到了禁止错误,http://domain-1.com并且http://server-ip

更新 我向 apache conf.d 添加了以下代码,但错误仍然存​​在。

<IfModule mod_userdir.c>
    UserDir enabled user
    UserDir public_html
</IfModule>
<Directory /home/*/public_html>
        Options Indexes Includes FollowSymLinks
        Require all granted
        AllowOverride All
        Allow from all
        Order deny,allow
</Directory>

答案1

有点取决于日志文件中的错误消息,缺少 IndexDocument,即 documentroot 中没有 index.html 可能是导致该错误的一个明显原因。

另一个常见原因是您启用了 SELinux。使用 检查一下getenforce

当然,还有 documentroot 路径上的文件系统权限,/home/user/home/user/domains/<etc>

相关内容