Apache构建虚拟web主机

虚拟web主机介绍

虚拟 Web 主机指的是在同一台服务器中运行多个 Web 站点,其中的每一个站点实际
上并不独立占用整个服务器,因此被称为“虚拟”Web 主机。通过虚拟 Web 主机服务可以充
分利用服务器的硬件资源,从而大大降低网站构建及运行成本。

使用 httpd 可以非常方便地构建虚拟主机服务器,只需要运行一个 httpd 服务就能够同
时支撑大量的 Web 站点。httpd 支持的虚拟主机类型包括以下三种。

●基于域名:为每个虚拟主机使用不同的域名,但是其对应的 IP 地址是相同的。 例如,www.51xit.top 和
www.52xit.top 站点的 IP 地址都是 192.168.100.41。这 是使用最为普遍的虚拟 Web 主机类型。

●基于 IP 地址:为每个虚拟主机使用不同的域名,且各自对应的 IP 地址也不相
同。这种方式需要为服务器配备多个网络接口,因此应用并不是非常广泛。(安全)

●基于端口:这种方式并不使用域名、IP 地址来区分不同的站点内容,而是使用 了不同的TCP
端口号,因此用户在浏览不同的虚拟站点时需要同时指定端口号才 能访问。

配置办法

先开启虚拟主机模块,并做好测试准备

[root@localhost ~]# mkdir -p /opt/www/html/123.top  //创建网页首页目录
[root@localhost ~]# mkdir -p /opt/www/html/abc.top  //创建网页首页目录
[root@localhost ~]# vim /opt/www/html/123.top/index.html  //编辑首页内容
<html><body><h1>www.123.top</h1>
<img src="t.jpg"/>
</body></html>
[root@localhost ~]# vim /opt/www/html/abc.top/index.html    //编辑首页内容
<html><body><h1>www.abc.top</h1>
<img src="g.jpg"/>
</body></html>
[root@localhost htdocs]# vi /etc/httpd.conf

Include conf/extra/httpd-vhosts.conf   ##去掉#号,开启虚拟主机模块

1.基于域名

[root@localhost ~]# vim /usr/local/httpd/conf/extra/httpd-vhosts.conf
<VirtualHost*:80>          ####设置 123.top 虚拟站点区域
    DocumentRoot "/opt/www/html/123.top"  //网页首页目录
    ServerName www.123.top  //域名
    ErrorLog "logs/www.123.top.error_log"   //错误日志文件(默认在/usr/loacl/httpd/log目录下)
    CustomLog "logs/www.123.top.access_log" common   //访问日志文件
    <Directory "/opt/www/html">      ####设置目录访问权限
        Require all granted           ####允许所有都有访问
    </Directory>
</VirtualHost>

<VirtualHost*:80>       ####设置 abc.top 虚拟站点区域
    DocumentRoot "/opt/www/html/abc.top" 
    ServerName www.abc.top
    ErrorLog "logs/www.abc.top.error_log" 
    CustomLog "logs/www.abc.top.access_log" common
    <Directory "/opt/www/html">             ####设置目录访问权限
       Require all granted
    </Directory>
</VirtualHost>
[root@localhost ~]# systemctl restart httpd  ##重启生效

在这里插入图片描述

映射:

 [root@localhost opt]# vi /etc/hosts  //做主机域名映射

末尾添加: 
192.168.200.60        www.123.top
192.168.200.60        www.abc.top

在这里插入图片描述

测试验证

浏览器输入:www.123.top
在这里插入图片描述

浏览器输入:www.abc.top

在这里插入图片描述

2.基于 IP 地址

主机上有2块网卡
网卡1192.168.100.41
网卡2192.168.100.42

修改配置文件:

[root@localhost ~]# vim /usr/local/httpd/conf/extra/httpd-vhosts.conf
<VirtualHost 192.168.200.60:80>         
    DocumentRoot "/opt/www/html/123.top"  /
    ServerName www.123.top  //域名
    ErrorLog "logs/www.123.top.error_log"   
    CustomLog "logs/www.123.top.access_log" common   
    <Directory "/opt/www/html">      
        Require all granted           
    </Directory>
</VirtualHost>

<VirtualHost 192.168.200.70:80>       
    DocumentRoot "/opt/www/html/abc.top" 
    ServerName www.abc.top
    ErrorLog "logs/www.abc.top.error_log" 
    CustomLog "logs/www.abc.top.access_log" common
    <Directory "/opt/www/html">            
       Require all granted
    </Directory>
</VirtualHost>
[root@localhost ~]# systemctl restart httpd  

测试验证

浏览器输入:http://192.168.200.60
在这里插入图片描述

浏览器输入:http://192.168.200.70

在这里插入图片描述

3.基于端口的虚拟主机

修改配置文件:
[root@localhost ~]# vi /etc/httpd.conf   //基于端口的web虚拟主机,需要去主配置文件中监听端口(区别于上两种)

Listen 192.168.200.60:80
Listen 192.168.200.60:8080




[root@localhost ~]# vim /usr/local/httpd/conf/extra/httpd-vhosts.conf
<VirtualHost 192.168.200.60:80>         
    DocumentRoot "/opt/www/html/123.top"  /
    ServerName www.123.top  //域名
    ErrorLog "logs/www.123.top.error_log"   
    CustomLog "logs/www.123.top.access_log" common   
    <Directory "/opt/www/html">      
        Require all granted           
    </Directory>
</VirtualHost>

<VirtualHost 192.168.200.60:8080>       
    DocumentRoot "/opt/www/html/abc.top" 
    ServerName www.abc.top
    ErrorLog "logs/www.abc.top.error_log" 
    CustomLog "logs/www.abc.top.access_log" common
    <Directory "/opt/www/html">            
       Require all granted
    </Directory>
</VirtualHost>

测试验证

浏览器输入:http://192.168.200.60:80
在这里插入图片描述

浏览器输入:http://192.168.200.60:8080
在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值