首页›Linux操作系统›Linux网络操作系统-第33节-配置Apache服务器(二)虚拟主机

Linux网络操作系统-第33节-配置Apache服务器(二)虚拟主机

公司有官网、有内部门户,难道买两台服务器?不用——虚拟主机让一台 Apache 按域名分发到不同目录。

第三十三节 配置Apache二:基于域名的虚拟主机vhost.conf
第三十三节 配置Apache二:基于域名的虚拟主机vhost.conf

一、原理:Host 字段

浏览器每次请求都会带上 Host: www.site1.com 头。Apache 拿这个字段跟 VirtualHost 的 ServerName 匹配,决定把请求交给哪个目录。所以:一台服务器、一个 80 端口,也能同时服务无数个网站。

二、配置虚拟主机

mkdir /var/www/site1 /var/www/site2
echo "

Site1 官网

" > /var/www/site1/index.html echo "

Site2 门户

" > /var/www/site2/index.html vim /etc/httpd/conf.d/vhost.conf DocumentRoot /var/www/site1 ServerName www.site1.com DocumentRoot /var/www/site2 ServerName www.site2.com systemctl reload httpd

三、客户端验证(没有 DNS 也能测)

测试机没有 DNS 服务也没关系,改 hosts 文件模拟解析:

  • Windows:编辑 C:\Windows\System32\drivers\etc\hosts,加两行:192.168.200.10 www.site1.com 和 192.168.200.10 www.site2.com;
  • 浏览器分别访问两个域名,看到不同首页即成功。

配了 VirtualHost 后,默认中心主机(主配置里的 DocumentRoot)会被取代——所有请求都按域名匹配虚拟主机。这是 Apache 官方文档明确的规则,不是故障。排错顺序:vhost.conf 语法 → reload 了没 → hosts 指向了没。

上一篇
下一篇