apache-2.4.12基于域名访问的多虚拟主机配置


原始配置:

    ServerAdmin [email protected]

    DocumentRoot "/data/cms"

    ServerName www.etiantian.org

    ServerAlias etiantian.org

    ErrorLog "logs/www.etiantian.org-error_log"

    CustomLog "logs/www.etiantian.org-access_log" common


    ServerAdmin [email protected]

    DocumentRoot "/data/bbs"

    ServerName bbs.etiantian.org

    ErrorLog "logs/bbs.etiantian.org-error_log"

    CustomLog "logs/bbs.etiantian.org-access_log" common


    ServerAdmin [email protected]

    DocumentRoot "/data/blog"

    ServerName blog.etiantian.org

    ErrorLog "logs/blog.etiantian.org-error_log"

    CustomLog "logs/blog.etiantian.org-access_log" common

    以上的基于域名访问的多虚拟主机配置大家能看出错在哪吗?乍一看没有问题,可是在apache-2.4.12下这样配置完,访问出现403错误,无权限访问。根据提示查看了目录以及文件的权限问题,没有问题;查看程序错误日志和系统日志也没有明显的错误;这时冷静下来好好想了想,目录及文件权限没有问题,那剩下就是站点目录访问权限了,于是在虚拟主机配置文件里面的虚拟主机配置前加入这么一段:


    Options Indexes FollowSymLinks Includes ExecCGI

    AllowOverride All

     Require all granted


再些修改虚拟主机配置文件如下:



    Options Indexes FollowSymLinks Includes ExecCGI

    AllowOverride All

     Require all granted

    ServerAdmin [email protected]

    DocumentRoot "/data/cms"

    ServerName www.etiantian.org

    ServerAlias etiantian.org

    ErrorLog "logs/www.etiantian.org-error_log"

    CustomLog "logs/www.etiantian.org-access_log" common



    ServerAdmin [email protected]

    DocumentRoot "/data/bbs"

    ServerName bbs.etiantian.org

    ErrorLog "logs/bbs.etiantian.org-error_log"

    CustomLog "logs/bbs.etiantian.org-access_log" common



    ServerAdmin [email protected]

    DocumentRoot "/data/blog"

    ServerName blog.etiantian.org

    ErrorLog "logs/blog.etiantian.org-error_log"

    CustomLog "logs/blog.etiantian.org-access_log" common


    经过以上的修改后,重启apache服务,现在可以正常访问,呵呵,大功能告成!