linux7下虚拟主机的三种实现方式
一、 相同IP地址,不同端口号
虚拟主机1:主机IP地址为172.16.30.20,端口号为80(默认端口),DocumentRoot是/var/www/vhost1,在DocumentRoot目录下创建虚拟主机站点主页文件。
[root@rhel7 ~]# cd /var/www/[root@rhel7 www]# mkdir vhost1[root@rhel7 www]# cd vhost1/[root@rhel7 vhost1]# vim index.html[root@rhel7 vhost1]# cat index.htmlthis is the vhost1
虚拟主机2:主机IP地址为172.16.30.20,端口号为8080,DocumentRoot是/var/www/vhost2,在DocumentRoot目录下创建虚拟主机站点主页文件。
[root@rhel7 ~]# cd /var/www/[root@rhel7 www]# mkdir vhost2[root@rhel7 www]# cd vhost2/[root@rhel7 vhost2]# vim index.html[root@rhel7 vhost2]#[root@rhel7 vhost2]# cat index.htmlthis is the vhost2
编辑虚拟机主机配置文件httpd-vhosts.conf
[root@rhel7 ~]# vim /etc/httpd/conf.d/httpd-vhosts.conf DocumentRoot "/var/www/vhost1" Listen 8080 DocumentRoot "/var/www/vhost2" [root@rhel7 ~]# systemctl restart httpd[root@rhel7 ~]# firewall-cmd --add-port=8080/tcp --permanentsuccess[root@rhel7 ~]# firewall-cmd --reloadsuccess
访问测试:
二、 不同IP地址,相同端口号
虚拟主机1:主机IP地址为172.16.30.20,端口号为80(默认端口),DocumentRoot是/var/www/vhost1,在DocumentRoot目录下创建虚拟主机站点主页文件。
虚拟主机2:主机IP地址为172.16.30.200,端口号为80(默认端口),DocumentRoot是/var/www/vhost2,在DocumentRoot目录下创建虚拟主机站点主页文件。
[root@rhel7 ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33TYPE=EthernetBOOTPROTO=noneDEFROUTE=yesIPV4_FAILURE_FATAL=noIPV6INIT=yesIPV6_AUTOCONF=yesIPV6_DEFROUTE=yesIPV6_FAILURE_FATAL=noIPV6_ADDR_GEN_MODE=stable-privacyNAME=ens33UUID=bde41fa3-f559-4de2-ba9a-857fed211aacDEVICE=ens33ONBOOT=yesDNS1=127.0.0.1ZONE=publicIPADDR=172.16.30.10PREFIX=24IPV6_PEERDNS=yesIPV6_PEERROUTES=yesIPADDR1=172.16.30.100PREFIX1=24
[root@rhel7 ~]# vim /etc/httpd/conf.d/httpd-vhosts.conf DocumentRoot "/var/www/vhost1" DocumentRoot "/var/www/vhost2" [root@rhel7 ~]# systemctl restart httpd
访问测试:
三、 相同IP地址,相同端口号,不同FQDN
虚拟主机1:主机IP地址为172.16.30.20,端口号为80(默认端口),FQDN为vhost1.example.com,DocumentRoot是/var/www/vhost1,在DocumentRoot目录下创建虚拟主机站点主页文件。
虚拟主机2:主机IP地址为172.16.30.20,端口号为80(默认端口),FQDN为vhost2.example.com,DocumentRoot/var/www/vhost2,在DocumentRoot目录下创建虚拟主机站点主页文件。
[root@rhel7 ~]# vim /etc/httpd/conf.d/httpd-vhosts.conf DocumentRoot "/var/www/vhost1" ServerName vhost1.example.com DocumentRoot "/var/www/vhost2" ServerName vhost2.example.com
注意:DNS服务器中需要添加对应的解析内容。
访问测试:
记得每次修改完配置文件后需要重启服务。