基本环境
底层: Windows 11 x64
虚拟化层:VMWare Workstation 17.0.2
虚拟化兼容性:ESXi 6.7
虚拟硬件:
CPU: 4 Core
RAM: 16 GB
HDD: 128 GB SCSI
NetWork: NAT
操作系统版本: CentOS 7.9.2207 Mininal 无更新、无升级内核
无系统更新
无内核升级
关闭 SELinux
配置 NTP 时间同步
安装 Open VM Tools
美化 CLI
基本定义
# 虚拟主机:将多个网站发布在一台服务器上的配置方案是虚拟主机
# 基于 IP地址 的虚拟主机:同一台服务器上配置多个IP地址,每个IP地址对应一个网站的虚拟主机方案。用户通过访问不同的IP地址,达到访问不同网站的目的
场景设计
# 默认网站 数据目录
/data/www/
# 创建两个 网站数据目录
Site 1 站点 /data/www/site1
Site 2 站点 /data/www/site2
# 设定 网站
Site 1 站点 /data/www/site1 访问路径为 http://{IP 2}/
Site 2 站点 /data/www/site2 访问路径为 http://{IP 3}/
前置准备
添加 新的 IP地址
# 方法 1 :编辑配置文件,为服务器设置多个IP地址
nano /etc/sysconfig/network-scripts/ifcfg-ens32
# {
# 将 IPADDR= 修改为 IPADDR0
# 增加 IPADDR1= IP2
# 增加 IPADDR2= IP3
# }
# 方法 2 :使用命令直接修添加 IP 地址
sed -i 's/IPADDR=/IPADDR0=/g' /etc/sysconfig/network-scripts/ifcfg-ens32
sed -i '/IPADDR0=/a IPADDR2=172.16.26.132' /etc/sysconfig/network-scripts/ifcfg-ens32
sed -i '/IPADDR0=/a IPADDR1=172.16.26.131' /etc/sysconfig/network-scripts/ifcfg-ens32
# 经过测试,发现 网关丢失了,添加一下,顺便设置三个IP的子网掩码
sed -i 's/IPADDR=/IPADDR0=/g' /etc/sysconfig/network-scripts/ifcfg-ens32
sed -i '/IPADDR0=/a IPADDR2=172.16.26.132' /etc/sysconfig/network-scripts/ifcfg-ens32
sed -i '/IPADDR0=/a IPADDR1=172.16.26.131' /etc/sysconfig/network-scripts/ifcfg-ens32
# 查看 IP 修改结果
cat /etc/sysconfig/network-scripts/ifcfg-ens32
# 重新启动 网络服务
systemctl restart network.service
创建 虚拟主机 网站
# 分别创建 两个 虚拟主机 网站目录
mkdir -p /data/www/site1
mkdir -p /data/www/site2
# 创建 虚拟主机 网站 Site 1 首页文件
echo "Welcom To FourLeaf Studio by VT Host IP Site 1 <br> Web Data /data/www/site1 <br> Web IP Add 172.16.26.131" > /data/www/site1/index.html
# 创建 虚拟主机 网站 Site 2 首页文件
echo "Welcom To FourLeaf Studio by VT Host IP Site 2 <br> Web Data /data/www/site2 <br> Web IP Add 172.16.26.132" > /data/www/site2/index.html
创建 虚拟主机 配置文件
# 方法 1 : 创建 虚拟主机配置文件
nano /etc/nginx/conf.d/vt-host.conf
# 添加 如下内容
# {
# 基于 IP 虚拟 主机 Site 1
# IP地址 172.16.26.131
# 访问路径 /data/www/site1
server {
listen 172.16.26.131;
root /data/www/site1;
location / {
index index.html index.htm;
}
}
# 基于 IP 虚拟 主机 Site 2
# IP地址 172.16.26.132
# 访问路径 /data/www/site2
server {
listen 172.16.26.132;
root /data/www/site2;
location / {
index index.html index.htm;
}
}
# }
# 方法 2 : 命令行直接创建 虚拟主机 配置文件
sudo cat <<EOF > /etc/nginx/conf.d/vt-host.conf
# Nginx 虚拟主机 专用配置文件
# /etc/nginx/conf.d/vt-host.conf
# author: SRover Lee
# 基于 IP 虚拟 主机 Site 1
# IP地址 172.16.26.131
# 访问路径 /data/www/site1
server {
listen 172.16.26.131;
root /data/www/site1;
location / {
index index.html index.htm;
}
}
# 基于 IP 虚拟 主机 Site 2
# IP地址 172.16.26.132
# 访问路径 /data/www/site2
server {
listen 172.16.26.132;
root /data/www/site2;
location / {
index index.html index.htm;
}
}
EOF
重新启动 Nginx 服务
# 重新启动 Nginx 服务
systemctl restart nginx.service
访问地址
# 基于 IP 虚拟主机 访问地址
http://{IP 2}/
http://{IP 3}/
本文暂时没有评论,来添加一个吧(●'◡'●)