23

linux7下虚拟主机的三种实现方式-钟枭飞

 4 years ago
source link: https://blog.51cto.com/zhongxiaofei/2441908
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

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.html
this 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.html
this is the vhost2

编辑虚拟机主机配置文件httpd-vhosts.conf

[root@rhel7 ~]# vim /etc/httpd/conf.d/httpd-vhosts.conf
<VirtualHost 172.16.30.10:80>
    DocumentRoot "/var/www/vhost1"
</VirtualHost>
Listen 8080
<VirtualHost 172.16.30.10:8080>
    DocumentRoot "/var/www/vhost2"
</VirtualHost>
[root@rhel7 ~]# systemctl restart httpd
[root@rhel7 ~]# firewall-cmd --add-port=8080/tcp --permanent
success
[root@rhel7 ~]# firewall-cmd --reload
success

访问测试:

linux7下虚拟主机的三种实现方式
linux7下虚拟主机的三种实现方式

二、 不同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-ens33
TYPE=Ethernet
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=bde41fa3-f559-4de2-ba9a-857fed211aac
DEVICE=ens33
ONBOOT=yes
DNS1=127.0.0.1
ZONE=public
IPADDR=172.16.30.10
PREFIX=24
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPADDR1=172.16.30.100
PREFIX1=24
[root@rhel7 ~]# vim /etc/httpd/conf.d/httpd-vhosts.conf
<VirtualHost 172.16.30.10:80>
    DocumentRoot "/var/www/vhost1"
</VirtualHost>

<VirtualHost 172.16.30.100:80>
    DocumentRoot "/var/www/vhost2"
</VirtualHost>

[root@rhel7 ~]# systemctl restart httpd

访问测试:

linux7下虚拟主机的三种实现方式
linux7下虚拟主机的三种实现方式

三、 相同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
<VirtualHost 172.16.30.10:80>
    DocumentRoot "/var/www/vhost1"
    ServerName vhost1.example.com
</VirtualHost>
<VirtualHost 172.16.30.10:80>
    DocumentRoot "/var/www/vhost2"
    ServerName vhost2.example.com
</VirtualHost>

注意:DNS服务器中需要添加对应的解析内容。

linux7下虚拟主机的三种实现方式

访问测试:

linux7下虚拟主机的三种实现方式
linux7下虚拟主机的三种实现方式

记得每次修改完配置文件后需要重启服务。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK