2025-05-21 21:21:42
568

如何在服务器上搭建基于名称的虚拟主机?

摘要
本文详细讲解在Linux服务器部署基于域名的虚拟主机方案,涵盖DNS配置、Apache虚拟主机模块设置、多站点目录管理及访问验证全流程,适用于需要在一台服务器托管多个网站的场景。...

服务器基于名称的虚拟主机搭建指南

技术概述

基于名称的虚拟主机允许在单一服务器上通过不同域名部署多个网站,通过HTTP协议Host头实现请求分发。相较于基于IP或端口的方案,此方法无需额外网络资源且便于管理。

环境准备

基础环境要求:

  • Linux服务器(推荐CentOS/RHEL 8+)
  • Apache 2.4+
  • BIND DNS服务

执行以下命令安装核心组件:

yum install httpd bind-utils -y
systemctl enable --now httpd named

DNS配置

  1. 编辑/etc/named.conf添加新区域
  2. 创建区域文件/var/named/example.com.zone
    @ IN A 192.168.100.10
    www IN A 192.168.100.10
  3. 重启DNS服务:systemctl restart named

Apache虚拟主机设置

核心配置步骤:

  1. 在主配置文件httpd.conf启用虚拟主机模块:
    Include conf/extra/httpd-vhosts.conf
  2. 创建虚拟主机配置文件:
    ServerName www.example1.com
    DocumentRoot /var/www/example1
    
  3. 创建网站目录并设置权限:
    mkdir -p /var/www/example{1,2}
    chown apache:apache /var/www/example*

测试与验证

完成配置后执行:

  • 重启Apache服务:systemctl restart httpd
  • 在客户端配置hosts文件:
    192.168.100.10 www.example1.com
    192.168.100.10 www.example2.com
  • 浏览器访问测试域名,确认显示对应站点的内容

若访问失败,检查防火墙规则和服务日志:journalctl -u httpd

通过DNS解析配合Apache虚拟主机配置,可在单台服务器高效部署多个网站。该方案具有资源利用率高、维护成本低的优势,适用于中小型Web服务集群的搭建。

声明:文章不代表云主机测评网观点及立场,不构成本平台任何投资建议。投资决策需建立在独立思考之上,本文内容仅供参考,风险自担!转载请注明出处!侵权必究!
回顶部