基于IP和端口的虚拟主机配置
-
Web站点主目录
在配置文件/etc/httpd/conf/httpd.conf中,检索指令关键字DocuemntRoot,可以看到如下信息:
DocumentRoot "/var/www/html" #Apache默认的web配置目录位置
访问其下的index222.html文件为
http://192.168.94.222/index222.html
访问目录可以编辑相应的**.conf**文件更改
-
基于IP的虚拟主机配置
-
把ens33映射成多个IP地址
vim /etc/sysconfig/network-scripts/ifcfg-ens33 IPADDR1=192.168.94.223 IPADDR2=192.168.94.224 #添加两个IP地址
-
重新启动网卡
systemctl restart network ip addr #查看IP
可以互ping测试IP是否生效
-
建立基于IP方式虚拟主机存放站点的根目录,并创建首页index.html
[root@localhost ~]# cd /var/www [root@localhost www]# mkdir 223 [root@localhost www]# mkdir 224 [root@localhost www]# echo "192.168.94.223对应的网站" >223/index.html [root@localhost www]# echo "192.168.94.224对应的网站" > 224/index.html
-
编辑每个IP的不同的配置文件
在服务器的根目录/etc/httpd/下,创建一个虚拟主机的配置文件目录vhost,和服务器的默认配置目录conf为同一级目录,在该目录下分别新建223.conf、224.conf虚拟主机IP配置文件,再将主配置httpd.conf文件中包含这两个虚拟IP配置文件即可
[root@localhost ~]# cd /etc/httpd [root@localhost httpd]# mdir vhost [root@localhost httpd]# vi vhost/223.conf <VirtualHost 192.168.94.223> DocumentRoot "/var/www/223" DirectoryIndex index.html <Directory "/var/www/223/"> Options Indexes FollowSymLinks AllowOverride None Require all granted </Directory> </VirtualHost> [root@localhost httpd]# vi vhost/224.conf <VirtualHost 192.168.94.224> DocumentRoot "/var/www/224" DirectoryIndex index.html <Directory "/var/www/224/"> Options Indexes FollowSymLinks AllowOverride None Require all granted </Directory> </VirtualHost> [root@localhost httpd]# vi conf/httpd.conf ··· IncludeOptioonal vhost/*.conf #包含虚拟主机的IP方式的配置文件 [root@localhost httpd]# systemctl restart httpd #重启使配置生效
浏览器输入IP192.168.94.223访问
-
-
基于端口号方式的虚拟主机配置
-
在主配置文件中加入不同的监听端口号
Listen 8081 Listen 8082 IncludeOptional vhost/*.conf #原先配置文件保留
-
建立基于端口号的虚拟主机存放站点的根目录,并创建首页index.html文件
[root@localhost ~]# cd /var/www [root@localhost www]# mkdir 8081 [root@localhost www]# mkdir 8082 [root@localhost www]# echo "8081端口对应的网站" > 8081/index.html [root@localhost www]# echo "8082端口对应的网站" > 8082/index.html
-
同样编辑每个端口的不同的配置文件
在服务器的根目录/etc/httpd/的配置文件目录vhost,和服务器的默认配置目录conf为同一级目录,在该目录下分别新建8081.conf、8082.conf虚拟主机IP配置文件,再将主配置httpd.conf文件中包含这两个虚拟IP配置文件即可
[root@localhost ~]# cd /etc/httpd [root@localhost httpd]# vi vhost/8081.conf <VirtualHost 192.168.94.8081> DocumentRoot "/var/www/8081" DirectoryIndex index.html <Directory "/var/www/8081/"> Options Indexes FollowSymLinks AllowOverride None Require all granted </Directory> </VirtualHost> [root@localhost httpd]# vi vhost/8082.conf <VirtualHost 192.168.94.8082> DocumentRoot "/var/www/8082" DirectoryIndex index.html <Directory "/var/www/8082/"> Options Indexes FollowSymLinks AllowOverride None Require all granted </Directory> </VirtualHost>
-
测试虚拟主机网页
完成以上操作,需要防火墙开放心得端口号,以及重启httpd服务,才可以测试虚拟主机
[root@localhost conf]# firewall-cmd --permanent --add-port=8081/tcp success [root@localhost conf]# firewall-cmd --permanent --add-port=8082/tcp success [root@localhost conf]# systemctl restart firewalld #一定要重新启动或者重载防火墙!! [root@localhost conf]# systemctl restart httpd.service
-