当前位置: 首页 > news >正文

Linux中Apache与Web之虚拟主机配置指南

Linux中Apache与Web之虚拟主机配置指南

一、虚拟主机概述

目的:在同一台服务器上部署多个独立站点(如 baidu、taobao)。
实现方式

  1. 相同 IP + 不同端口
  2. 不同 IP + 相同端口
  3. 相同 IP + 相同端口 + 不同域名(FQDN)

二、配置步骤

基于 Linux中DNS系统搭建与配置指南 后

1、相同配置
  1. 创建目录

    cd /var/www/
    mkdir yanyvhang
    mkdir wiltjer
    echo yanyvhang > yanyvhang/index.html			# 创建yanyvhang/index.html并输入内容
    echo wiltjer > wiltjer/index.html				# 创建wiltjer/index.html并输入内容
    
  2. 复制虚拟主机模板

    cp -p /usr/share/doc/httpd-2.4.6/httpd-vhosts.conf /etc/httpd/conf.d/
    
2、相同 IP、不同端口
  1. 使用示例

    • yyh.example.com 使用 192.168.100.20:80
    • wil.example.com 使用 192.168.100.20:8080
  2. 编辑主配置文件

    vim /etc/httpd/conf.d/httpd-vhosts.conf			# 主配置文件<VirtualHost 192.168.100.20:80>				# IP地址和端口号DocumentRoot "/var/www/yanyvhang"		# 告诉配置文件位置在哪里</VirtualHost>Listen 8080									# 监听8080端口<VirtualHost 192.168.100.20:8080>			# IP地址和端口号DocumentRoot "/var/www/wiltjer"			# 告诉配置文件位置在哪里</VirtualHost>systemctl restart httpd							# 重启服务
    systemctl enable httpd							# 下次开机自启
    

    在这里插入图片描述

    在这里插入图片描述

3、不同ip、相同的端口
  1. 使用示例

    • yyh.example.com 使用 192.168.100.20:80
    • wil.example.com 使用 192.168.100.200:80
  2. 编辑主配置文件

    vim /etc/httpd/conf.d/httpd-vhosts.conf			# 主配置文件<VirtualHost 192.168.100.20:80>				# IP地址和端口号DocumentRoot "/var/www/yanyvhang"		# 告诉配置文件位置在哪里</VirtualHost><VirtualHost 192.168.100.200:80>			# IP地址和端口号DocumentRoot "/var/www/wiltjer"			# 告诉配置文件位置在哪里</VirtualHost>systemctl restart httpd							# 重启服务
    systemctl enable httpd							# 下次开机自启
    
  3. 编辑网卡配置

    vim /etc/sysconfig/network-scripts/ifcfg-ens33	# 网卡配置文件IPADDR1=192.168.100.200						# 额外添加的IPPREFIX1=24									# 额外添加的IP的子网掩码systemctl restart network						# 重启服务
    systemctl enable network						# 下次开机自启
    

    在这里插入图片描述

    在这里插入图片描述

4、相同ip、相同端口、不同的FQDN
  1. 使用示例

    • yyh.example.com 使用 192.168.100.20:80
    • wil.example.com 使用 192.168.100.20:80
  2. 编辑主配置文件

    vim /etc/httpd/conf.d/httpd-vhosts.conf			# 主配置文件<VirtualHost 192.168.100.20:80>				# IP地址和端口号DocumentRoot "/var/www/yanyvhang"		# 告诉配置文件位置在哪里ServerName yyh.example.com				# 完整域名</VirtualHost><VirtualHost 192.168.100.20:80>				# IP地址和端口号DocumentRoot "/var/www/wiltjer"			# 告诉配置文件位置在哪里ServerName wil.example.com				# 完整域名</VirtualHost>systemctl restart httpd							# 重启服务
    systemctl enable httpd							# 下次开机自启
    
  3. 编辑正向解析文件

    vim /var/named/yyh.com							# 正向解析文件yyh     IN      A       192.168.100.20		# 添加FQDN对应IPwil     IN      A       192.168.100.20		# 添加FQDN对应IPsystemctl restart named
    systemctl enable named
    

    在这里插入图片描述

    在这里插入图片描述

三、总结

方式适用场景关键区别
同 IP + 不同端口测试环境或内部服务需监听多端口
不同 IP + 同端口拥有多个公网 IP 的服务器需绑定多个 IP
同 IP + 同端口 + 域名生产环境(最常见)依赖 ServerName 区分站点
http://www.lryc.cn/news/618507.html

相关文章:

  • git config的配置全局或局部仓库的参数: local, global, system
  • 【unity实战】使用Splines+DOTween制作弯曲手牌和抽牌动画效果
  • 有限元方法中的数值技术:行列式、求逆、矩阵方程
  • 【bug 解决】串口输出字符乱码的问题
  • 【Datawhale夏令营】多模态RAG学习
  • 【Bug经验分享】由jsonObject-TypeReference引发的序列化问题
  • 【昇腾】关于Atlas 200I A2加速模块macro0配置3路PCIE+1路SATA在hboot2中的一个bug_20250812
  • STM32_bug总结(TIM定时中断进不去和只进1次)
  • 高性能web服务器Nginx
  • 【Android】【bug】Json解析错误Expected BEGIN_OBJECT but was STRING...
  • linux 开机进入initramfs无法开机
  • 跨设备开发不再难:HarmonyOS 分布式任务管理应用全解析
  • 《Fast Automatic White Balancing Method by Color Histogram Stretching》论文笔记
  • 让齿轮与斑马线共舞:汽车文化驿站及安全教育基地的展陈实践
  • 农业智慧大屏系统 - Flask + Vue实现
  • 安全合规5--终端安全检测和防御技术
  • Python初学者笔记第二十二期 -- (JSON数据解析)
  • 【智慧城市】2025年湖北大学暑期实训优秀作品(3):基于WebGIS的南京市古遗迹旅游管理系统
  • 机器学习 [白板推导](十)[马尔可夫链蒙特卡洛法]
  • js高阶-总结精华版
  • [ 数据结构 ] 时间和空间复杂度
  • 机器学习之TF-IDF文本关键词提取
  • 机器学习-决策树(上)
  • HCIP项目之OSPF综合实验
  • 《算法导论》第 21 章-用于不相交集合的数据结构
  • Linux下命名管道和共享内存
  • django celery 动态添加定时任务后不生效问题
  • 自建知识库,向量数据库 体系建设(二)之BERT 与.NET 8
  • “生成式UI革命”:Tambo AI如何让你的应用“开口说话、动手搭界面” | 全面深剖、案例实践与未来展望
  • 深度学习自动并行技术:突破计算瓶颈的智能调度艺术