Apache如何建多个站点

    xiaoxiao2021-03-25  62

    1.  先打开Apache的配置文件httpd.conf,在这个文件,

    找到这句:#Include ......../extra/httpd-vhosts.conf

    (根据安装路径不同,上面的路径会有不同)

     把前面的#去掉,即开启了使用虚拟主机的功能;

    同样在httpd.conf中找到

    #LoadModule vhost_alias_module modules/mod_vhost_alias.so

    去掉前面的#

    2.  httpd-vhosts.conf中进行虚拟主机的配置操作;也可以在httpd.conf直接写入配置,但是不建议这么做;

    3.  打开httpd-vhosts.conf文件,找到NameVirutalHost *:80,这句话的含义是制定这个主机的IP地址和端口号;

    4.  关键的virtualhost配置,在NameVirutalHost *:80的下面;注意:Apache在接受请求时,首先会默认第一个VirtualHost,然后再匹配其他虚拟主机,如果没有匹配的,就是第一个VirtualHost起作用。故,在httpd.conf中,将<Dicrectory />(这个是所有目录的默认配置)<Direcotry/opt/lampp/htdocs>的权限,都默认设置为deny from all。(:# DocumentRoot 是网站文件存放的根目录# ServerName 是网站域名, 需要跟 DNS 指向的域名一致)

    5.  virtualhost配置实例:

        <VirtualHost *:80>

        DocumentRoot "E:/web/www"(你的文件存放的路径)

        ServerName www.example.cc

        ErrorLog "logs/www.example.cc-error.log"(查看错误的地方)

        CustomLog "logs/www.example.cc-access.log" common

     

        <Directory "E:/web/www">(同上一致)

        Options Indexes FollowSymLinks Includes ExecCGI

        Order allow,deny

        Allow from all

        Require all granted

    </Directory>

    第二个

      <VirtualHost *:80>

        DocumentRoot "仿写第一个"(你的文件存放的路径)

        ServerName www.example.cc

        ErrorLog "logs/www.example.cc-error.log"(查看错误的地方)

        CustomLog "logs/www.example.cc-access.log" common

     

        <Directory "仿写第一个">(同上一致)

        Options Indexes FollowSymLinks Includes ExecCGI

        Order allow,deny

        Allow from all

        Require all granted

    </Directory>

    转载请注明原文地址: https://ju.6miu.com/read-32792.html

    最新回复(0)