JAVA和Nginx 教程大全

网站首页 > 精选教程 正文

网页服务-Nginx - 虚拟主机 - 基于 IP

wys521 2024-10-04 06:02:11 精选教程 16 ℃ 0 评论

基本环境

底层: 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}/

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表