nginx基于域名,端口,不同IP的虚拟主机设置的实现


Posted in Servers onMarch 31, 2021

一. nginx 虚拟主机的设置

利用虚拟主机,不用为每个要运行的网站提供一台单独的Nginx服务器或单独运行一组Nginx进程,虚拟主机提供了在同一台服务器,同一组 Nginx进程上运行多个网站的功能。跟Apache一样,Nginx也可以配置多种类型的虚拟主机,分别是基于IP的虚拟主机、基于域名的虚拟主机、基于端口的虚拟主机。
使用Nginx搭建虚拟主机服务器时,每个虚拟Web站点拥有独立的“serverf”配置段,各自监听的IP地址、端口号可以单独指定,当然网站名称也是不同的。

1.1 基于域名的虚拟主机

1.11 改测试系统的WIN10的映射文件host

1)修改host文件

修改windos客户机的C:\Windows\System32\drivers\etc\hosts文件,加入www.51xit.top和www.52xit.top这两个域名,它们都指向同一个服务器IP地址,用于实现不同的域名访问不同的虚拟主机。

20.0.0.24 www.lph.com www.dzg.com

2)开启nginx服务对域名进行初测试

无论是测试www.lph.com 还是www.dzg.com都是指向的服务器20.0.0.24的网站测试首页。

浏览器中访问:www.lph.com

nginx基于域名,端口,不同IP的虚拟主机设置的实现

浏览器中访问:www.dzg.com

nginx基于域名,端口,不同IP的虚拟主机设置的实现

后面要实现的是访问不同的域名可以访问到不同的网点。

1.12 各个网站的目录和测试首页

[root@localhost~]# mkdir -p /var/www/html/lph/       ####创建www.lph.com的根目录
[root@localhost~]# mkdir -p /var/www/html/dzg/       ####创建www.dzg.com的根目录
[root@localhost~]# echo "www.lph.com" >> /var/www/html/lph/index.html
[root@localhost~]# echo "www.dzg.com" >> /var/www/html/dzg/index.html

1.13 主配置文件

修改配置文件/usr/local/nginx/conf/nginx.conf,把配置文件中的server{}代码段全部去掉,加入2个新的server{}段,对应2个域名。

1)配置文件的修改

####省略####
  server {
    listen    80;
    server_name www.lph.com;
    charset utf-8;
    access_log logs/www.lph.com.access.log;
    location / {
      root  /var/www/html/lph;
      index index.html index.htm;
    }
    error_page  500 502 503 504 /50x.html;
    location = /50x.html {
      root  html;
    }
  }
    server {
    listen    80;
    server_name www.dzg.com;
    charset utf-8;
    access_log logs/www.dzg.com.access.log;
    location / {
      root  /var/www/html/dzg;
      index index.html index.htm;
    }
    error_page  500 502 503 504 /50x.html;
    location = /50x.html {
      root  html;
    }
  }
  ####省略####

2)客户机测试
访问www.lph.com

nginx基于域名,端口,不同IP的虚拟主机设置的实现

访问www.dzg.com

nginx基于域名,端口,不同IP的虚拟主机设置的实现

1.2 基于端口的虚拟主机

只需要一个IP地址的不同端口实现访问不同的网点

1.21 配置文件的修改

server {
  listen   20.0.0.24:80;
  server_name www.lph.com;
  charset utf-8;
  access_log logs/www.lph.com.access.log;
  location / {
    root  /var/www/html/lph;
    index index.html index.htm;
  }
  error_page  500 502 503 504 /50x.html;
  location = /50x.html {
    root  html;
  }
}
server {
  listen    20.0.0.24:8080;
  server_name www.dzg.com;
  charset utf-8;
  access_log logs/www.dzg8080.com.access.log;
  location / {
    root  /var/www/html/dzg;
    index index.html index.htm;
  }
  error_page  500 502 503 504 /50x.html;
  location = /50x.html {
    root  html;
  }
}

1.22 客户机的测试

访问www.lph.com:80和访问20.0.0.24:80

nginx基于域名,端口,不同IP的虚拟主机设置的实现

访问www.dzg.com:8080及访问20.0.0.24:8080

nginx基于域名,端口,不同IP的虚拟主机设置的实现

1.3 基于不同IP的虚拟主机

主机配置两个IP地址
20.0.0.24 192.168.100.24

1.31 添加一张网卡并设置IP

[root@localhost ~]# nmcli connection    #复制新增网卡的地址
[root@localhost ~]# cd /etc/sysconfig/network-scripts/
[root@localhost network-scripts]# cp ifcfg-ens33 ifcfg-ens36
[root@localhost network-scripts]# vi ifcfg-ens36
NAME=ens36
UUID=ee2dccf4-cc4a-34bc-9cea-37e7d528cd27   #粘贴新增网卡的地址
DEVICE=ens36
ONBOOT=yes
IPADDR=192.168.100.26
NETMASK=255.255.255.0
GATEWAY=192.168.100.1

[root@localhost ~]# systemctl restart network
[root@localhost ~]# ifdown ens36
[root@localhost ~]# ifup ens36

#######打开电脑cmd ping一下   ping通继续

1.32 修改客户机的host 文件

20.0.0.0.24 www.lph.com
192.168.100.24 www.dzg.com

1.33 修改配置文件

server {
  listen   20.0.0.24:80;
  server_name www.lph.com;
  charset utf-8;
  access_log logs/www.lph.com.access.log;
  location / {
    root  /var/www/html/lph;
    index index.html index.htm;
  }
  error_page  500 502 503 504 /50x.html;
  location = /50x.html {
    root  html;
  }
}
server {
  listen    192.168.100.24:80;
  server_name www.dzg.com;
  charset utf-8;
  access_log logs/www.dzg.com.access.log;
  location / {
    root  /var/www/html/dzg;
    index index.html index.htm;
  }
  error_page  500 502 503 504 /50x.html;
  location = /50x.html {
    root  html;
  }
}

1.34 客户机测试

访问www.lph.com和访问20.0.0.24

nginx基于域名,端口,不同IP的虚拟主机设置的实现

访问www.dzg.com和访问192.168.100.24

nginx基于域名,端口,不同IP的虚拟主机设置的实现

到此这篇关于nginx基于域名,端口,不同IP的虚拟主机设置的实现的文章就介绍到这了,更多相关nginx 虚拟主机设置内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Servers 相关文章推荐
nginx前后端同域名配置的方法实现
Mar 31 Servers
浅谈Nginx 中的两种限流方式
Mar 31 Servers
详解Apache SkyWalking 告警配置指南
Apr 22 Servers
教你快速开启Apache SkyWalking的自监控
Apr 25 Servers
Nginx 路由转发和反向代理location配置实现
Nov 11 Servers
Nginx源码编译安装过程记录
Nov 17 Servers
NGINX 权限控制文件预览和下载的实现原理
Jan 18 Servers
Nginx 反向代理解决跨域问题多种情况分析
Jan 18 Servers
Shell脚本一键安装Nginx服务自定义Nginx版本
Mar 20 Servers
OpenStack虚拟机快照和增量备份实现方法
Apr 04 Servers
使用 DataAnt 监控 Apache APISIX的原理解析
Jul 07 Servers
django项目、vue项目部署云服务器的详细过程
Jul 23 Servers
Nginx设置日志打印post请求参数的方法
Mar 31 #Servers
nginx 多个location转发任意请求或访问静态资源文件的实现
nginx简单配置多个server的方法
nginx proxy_cache 缓存配置详解
Nginx搭建rtmp直播服务器实现代码
Mar 31 #Servers
nginx 反向代理之 proxy_pass的实现
Mar 31 #Servers
nginx location中多个if里面proxy_pass的方法
Mar 31 #Servers
You might like
PHP数据库操作面向对象的优点
2006/10/09 PHP
PHP 提取图片img标记中的任意属性的简单实例
2013/12/10 PHP
PHP 读取和编写 XML
2014/11/19 PHP
swoole和websocket简单聊天室开发
2017/11/18 PHP
php实现姓名根据首字母排序的类与方法(实例代码)
2018/05/16 PHP
Convert Seconds To Hours
2007/06/16 Javascript
纯JavaScript实现的兼容各浏览器的添加和移除事件封装
2015/03/28 Javascript
深入浅析JavaScript中prototype和proto的关系
2015/11/15 Javascript
json格式的javascript对象用法分析
2016/07/04 Javascript
JavaScript基于面向对象实现的猜拳游戏
2018/01/03 Javascript
Angular 4.x+Ionic3踩坑之Ionic3.x pop反向传值详解
2018/03/13 Javascript
跨域解决之JSONP和CORS的详细介绍
2018/11/21 Javascript
Vue中遍历数组的新方法实例详解
2019/07/21 Javascript
小程序实现层叠卡片滑动效果
2019/08/26 Javascript
解决layui表格的表头不滚动的问题
2019/09/04 Javascript
vue+导航锚点联动-滚动监听和点击平滑滚动跳转实例
2019/11/13 Javascript
AutoJs实现刷宝短视频的思路详解
2020/05/22 Javascript
js实现时间日期校验
2020/05/26 Javascript
vue等两个接口都返回结果再执行下一步的实例
2020/09/08 Javascript
[04:27]DOTA2官方论坛水友赛集锦
2013/09/16 DOTA
[08:54]DOTA2-DPC中国联赛 正赛 Aster vs LBZS 选手采访
2021/03/11 DOTA
Python中实现switch功能实例解析
2018/01/11 Python
Python+matplotlib绘制不同大小和颜色散点图实例
2018/01/19 Python
基于Python 装饰器装饰类中的方法实例
2018/04/21 Python
Python骚操作之动态定义函数
2019/03/26 Python
Django 配置多站点多域名的实现步骤
2019/05/17 Python
三好学生演讲稿范文
2014/04/26 职场文书
旅游与酒店管理专业求职信
2014/07/21 职场文书
四风对照检查剖析材料
2014/10/07 职场文书
无罪辩护词范文
2015/05/21 职场文书
基于python制作简易版学生信息管理系统
2021/04/20 Python
Python中zipfile压缩包模块的使用
2021/05/14 Python
GTX1650super好不好 gtx1650super显卡属于什么级别
2022/04/08 数码科技
vue使用element-ui按需引入
2022/05/20 Vue.js
CentOS7环境下MySQL8常用命令小结
2022/06/10 Servers
基于Python编写一个监控CPU的应用系统
2022/06/25 Python