Apache服务一虚拟主机部署

1.虚拟主机简介

  • 部署多个站点,每个站点,希望用不同的域名和站点目录,或者是不同的端口,不同的IP,需要使用到虚拟主机功能

2.虚拟主机分类

  • a)基于域名
  • b)基于端口
  • c)基于IP

3.基于域名的虚拟主机部署

3.1站点信息

域名          站点目录
www.liang.org   /var/www/html/www
blog.liang.org   /var/www/html/blog
bbs.liang.org   /var/www/html/bbs

3.2创建站点目录与文件

[root@http ~]# mkdir /var/www/html/{www,blog,bbs} -p
[root@http ~]# for name in www blog bbs;do echo "${name}.liang.org" >/var/www/html/${name}/index.html;done
[root@http ~]# for name in www blog bbs;do cat /var/www/html/${name}/index.html;done
www.liang.org
blog.liang.org
bbs.liang.org

3.3编辑配置文件

[root@http ~]# vi /application/apache/conf/extra/httpd-vhosts.conf
     27 <VirtualHost *:80>
     28     ServerAdmin 1093626742@qq.com
     29     DocumentRoot "/var/www/html/www"
     30     ServerName www.liang.org
     31     ServerAlias liang.org
     32     ErrorLog "logs/www-error_log"
     33     CustomLog "logs/www-access_log" common
     34 </VirtualHost>
     35 
     36 <VirtualHost *:80>
     37     ServerAdmin 1093626742@qq.com
     38     DocumentRoot "/var/www/html/bbs"
     39     ServerName bbs.liang.org
     40     ServerAlias liang.org
     41     ErrorLog "logs/bbs-error_log"
     42     CustomLog "logs/bbs-access_log" common
     43 </VirtualHost>
     44 
     45 <VirtualHost *:80>
     46     ServerAdmin 1093626742@qq.com
     47     DocumentRoot "/var/www/html/blog"
     48     ServerName blog.liang.org
     49     ServerAlias liang.org
     50     ErrorLog "logs/blog-error_log"
     51     CustomLog "logs/blog-access_log" common
     52 </VirtualHost>
[root@http ~]# vi /application/apache/conf/httpd.conf
    378 Include conf/extra/httpd-mpm.conf
    395 # Virtual hosts
    396 Include conf/extra/httpd-vhosts.conf
    418 <Directory "/var/www/html">
    419     Options FollowSymLinks
    420     AllowOverride None
    421     Order allow,deny
    422     Allow from all
    423 </Directory>

3.4检查语法

[root@http conf]# /application/apache/bin/apachectl -t
httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
Syntax OK

3.5平滑重启

[root@http ~]# /application/apache/bin/apachectl graceful
httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName

3.6验证

3.6.1打开另一台虚拟机

[root@localhost ~]# ifconfig eth0|head -2
eth0      Link encap:Ethernet  HWaddr 00:0C:29:54:32:23  
          inet addr:10.0.0.139  Bcast:10.0.0.255  Mask:255.255.255.0
[root@localhost ~]# tail -1 /etc/hosts
10.0.0.128 bbs.liang.org www.liang.org blog.liang.org

3.6.2测试

[root@localhost ~]# curl www.liang.org
www.liang.org
[root@localhost ~]# curl blog.liang.org
blog.liang.org
[root@localhost ~]# curl bbs.liang.org 
bbs.liang.org

4.基于端口的虚拟主机部署

4.1修改主配置文件,添加监听端口

[root@http ~]# vi /application/apache/conf/httpd.conf
     41 Listen 80
     42 Listen 81
     43 Listen 82

4.2修改bbs.liang.org绑定81端口,blog.liang.org绑定82端口

[root@http ~]# vi /application/apache/conf/extra/httpd-vhosts.conf
<VirtualHost *:81>
    ServerAdmin 1093626742@qq.com
    DocumentRoot "/var/www/html/bbs"
    ServerName bbs.liang.org
    ErrorLog "logs/bbs-error_log"
    CustomLog "logs/bbs-access_log" common
</VirtualHost>

<VirtualHost *:82>
    ServerAdmin 1093626742@qq.com
    DocumentRoot "/var/www/html/blog"
    ServerName blog.liang.org
    ErrorLog "logs/blog-error_log"
    CustomLog "logs/blog-access_log" common
</VirtualHost>

4.3重启

[root@http ~]# /application/apache/bin/apachectl graceful          
httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
[root@http ~]# netstat -lntup|grep httpd                           
tcp        0      0 :::80                       :::*                        LISTEN      69045/httpd         
tcp        0      0 :::81                       :::*                        LISTEN      69045/httpd         
tcp        0      0 :::82                       :::*                        LISTEN      69045/httpd         

4.4验证(打开另一台虚拟机)

[root@localhost ~]# curl www.liang.org
www.liang.org
[root@localhost ~]# curl bbs.liang.org:81
bbs.liang.org
[root@localhost ~]# curl blog.liang.org:82
blog.liang.org

5.基于IP与端口的虚拟主机部署

5.1给eth0添加两个IP

[root@http ~]# ifconfig eth0:0 10.0.0.129/24
[root@http ~]# ifconfig eth0:1 10.0.0.130/24
[root@http ~]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:0c:29:83:6f:43 brd ff:ff:ff:ff:ff:ff
    inet 10.0.0.128/24 brd 10.0.0.255 scope global eth0
    inet 10.0.0.129/24 brd 10.0.0.255 scope global secondary eth0:0
    inet 10.0.0.130/24 brd 10.0.0.255 scope global secondary eth0:1
    inet6 fe80::20c:29ff:fe83:6f43/64 scope link 
       valid_lft forever preferred_lft forever   

5.2修改配置文件

[root@http ~]# vi /application/apache/conf/extra/httpd-vhosts.conf
     19 NameVirtualHost *:80(删除这行)
     26 <VirtualHost 10.0.0.128:80>
     27     ServerAdmin 1093626742@qq.com
     28     DocumentRoot "/var/www/html/www"
     29     ServerName www.liang.org
     30     ServerAlias liang.org
     31     ErrorLog "logs/www-error_log"
     32     CustomLog "logs/www-access_log" common
     33 </VirtualHost>
     34 
     35 <VirtualHost 10.0.0.129:81>
     36     ServerAdmin 1093626742@qq.com
     37     DocumentRoot "/var/www/html/bbs"
     38     ServerName bbs.liang.org
     39     ErrorLog "logs/bbs-error_log"
     40     CustomLog "logs/bbs-access_log" common
     41 </VirtualHost>
     42 
     43 <VirtualHost 10.0.0.130:82>
     44     ServerAdmin 1093626742@qq.com

   45     DocumentRoot "/var/www/html/blog"
    46     ServerName blog.liang.org
    47     ErrorLog "logs/blog-error_log"
    48     CustomLog "logs/blog-access_log" common
    49 </VirtualHost>   

5.3重启

[root@http ~]# /application/apache/bin/apachectl graceful          
httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName           
5.4测试
[root@localhost ~]# curl 10.0.0.128
www.liang.org
[root@localhost ~]# curl 10.0.0.129:81
bbs.liang.org
[root@localhost ~]# curl 10.0.0.130:82
blog.liang.org

猜你喜欢

转载自blog.csdn.net/liang_operations/article/details/81393379