nginx安装 、分发实现多域名访问同一主机不同端口

标签: nginx安装 、分发实现多域名访问同一主机不同端口

nginx就不做介绍了,我也刚接触不久,了解比较片面,可以参考这篇博客了解一下:8分钟带你深入浅出搞懂Nginx
nginx分发机制大家可以参考这篇博客:nginx负载均衡的常用策略

一、nginx安装

ngnix的下载安装比较简单,可以去官网下载:nginx: download

基本命令

  • nginx -s start

  • nginx -s stop

  • ngins -s reload

我是Windows系统,找到对应的nginx文件直接下载压缩包后,解压即可使用。
这里不做过多介绍

二、nginx分发实现多域名访问同一主机不同端口

主要说说实现多域名访问同一主机不同端口,这里我就拿本机(Windows系统)来模拟演练一下。原理和操作都和实际是一样的,只不过如果是Linux系统,就会有些不同。

要实现多域名访问同一主机不同端口,我们大致需要操作三个文件:

  • C:\Windows\System32\drivers\etc 路径下的hosts文件
  • tomcat \conf 路径下的server.xml文件
  • Nginx \conf 路径下的nginx.conf文件

此外因为一般情况下一个tomcat只有一个ROOT启动项,所以还需要几个tomcat,我复制了两个
在这里插入图片描述

1.操作C:\Windows\System32\drivers\etc 路径下的hosts文件
(1) 首先进入对应路径,Windows系统一般都是这个路径,找到hosts文件打开(注意要是管理员身份下的编辑模式,否则有的Windows系统打开没有权限编辑和保存)
在这里插入图片描述
(2) 因为我是Windows7系统和Windows10有区别,下图看红框内是我添加的,因为我在本机做的演示,所以ip是127.0.0.1,域名也是我写的一个虚拟域名。修改好后保存

Windows7系统的hosts文件:
在这里插入图片描述
我还特意找了一个Windows10的hosts文件做对比,如果你是Windows10可以仿照上面的在这个下面添加,修改好后保存:
在这里插入图片描述


2.操作tomcat \conf 路径下的server.xml文件
(1)修改复制的两个tomcat\conf路径下的server.xml文件中的端口
第一个tomcat
这里我只展示修改的代码段,一共要改三个端口即可
更改后的端口是不唯一的,只要保证不同的tomcat的端口不一样即可

<!--将8005端口改为了8015-->
<Server port="8015" shutdown="SHUTDOWN">
<!--将8080端口改为了8001-->
 <Connector port="8001" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />
<!--将8009端口改为了8019-->
<Connector port="8019" protocol="AJP/1.3" redirectPort="8443" />

第二个tomcat
这里我只展示修改的代码段,一共要改三个端口即可
更改后的端口是不唯一的,只要保证不同的tomcat的端口不一样即可

<!--将8005端口改为了8025-->
<Server port="8025" shutdown="SHUTDOWN">
<!--将8080端口改为了8000-->
 <Connector port="8000" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />
<!--将8009端口改为了8029-->
<Connector port="8029" protocol="AJP/1.3" redirectPort="8443" />

这里我只修改了两个tomcat对应的server.xml文件,因为我要展示两个域名访问同一主机不同端口
上面修改保存后,启动我们的tomcat,两个都要启动。

注:如果出现了启动一个tomcat,当我们再次启动另外一个tomcat时,闪退的情况,一定是因为两个tomcat有部分端口重复了,仔细检查更改即可。

其实我们可以实现相同ip通过不同端口访问了,nginx只是对于域名和ip有了一个映射
我们先看看相同ip不同端口访问的访问

8000端口:
在这里插入图片描述
8001端口:
在这里插入图片描述
3. Nginx \conf 路径下的nginx.conf文件
(1)打开nginx.conf,如下图添加,代码在下面
在这里插入图片描述
可以看出来8001端口对应b.yzh.com域名,8000端口对应 c.yzh.com,ip是我本机的,因为我是在本机操作的嘛

server {
        listen 80;
		server_name  b.yzh.com;
        location / {
             proxy_pass http://127.0.0.1:8001;
        }
    }
	server {
        listen 80;
		server_name  c.yzh.com;
        location / {
             proxy_pass http://127.0.0.1:8000;
        }
    }

完成后保存即可。
(2)运行ngnix
进入ngnix路径,直接输入ngnix.exe即可启动
在这里插入图片描述
问题: 如果出现ngnix启动不成功,你之前又装过SQL server,那么在服务中找到SQL Server Reporting…停掉即可。
在这里插入图片描述
OK了!

版权声明:本文为m0_37482190原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/m0_37482190/article/details/92018326

智能推荐

PAT乙级 | 1095 解码PAT准考证 (25分)(做题过程+注意事项+运行超时解决方法)

PAT 准考证号由 4 部分组成: 第 1 位是级别,即 T 代表顶级;A 代表甲级;B 代表乙级; 第 2~4 位是考场编号,范围从 101 到 999; 第 5~10 位是考试日期,格式为年、月、日顺次各占 2 位; 最后 11~13 位是考生编号,范围从 000 到 999。 现给定一系列考生的准考证号和他们的成绩,请你按照要求输出各种统计信息。 输入格式: 输入首先在一行中给出两个正整数 ...

谈谈Java异常

0 概述 对于java工程师来说,是经常和异常打交道的,本文主要来谈一谈java中的异常。 1 异常类的继承关系 从下图(说明:图中只是列出部分异常类)可以看出: 异常的基类为Throwable,主要分为两个分支,即Error体系和Exception体系。 Exception下面分为RuntimeException和非RuntimeException(如IOException) 2 几种异常的区别...

通过设立FatFS隐藏分区,实现系统文件和用户文件的隔离

嘛。。这是一个关于个人使用FatFS文件系统的 一点小的经验。 我知道大家都会百度和谷歌,关于文件系统有什么用,文件系统怎么移植上自己的平台,看看资料也就懂了,在这里不再详述( 打字太慢一分钟50-60字懒得写)。本系列默认已经可以将设备模拟成u盘,并且已经通过修改diskio.c,可以实现ff.c中的各项功能( 不能实现的自行面壁)。FatFS项目官网 http://elm-chan.org/f...

Mysql之锁与事务知识要点小结

Mysql之锁与事务 平时的业务中,顶多也就是写写简单的sql,连事务都用的少,对锁这一块的了解就更加欠缺了,之前一个大神分享了下mysql的事务隔离级别,感觉挺有意思的,正好发现一个很棒的博文,然后也收集了一些相关知识,正好来学习下,mysql中锁与事务的神秘面纱,主要内容包括 共享锁和排它锁的区别以及适合范围 mysql的表锁和行锁的区别 怎么判断一个sql是否执行了锁,执行的是表锁还是行锁 ...

响应式图片二 通过srcset实现

具体方法如下: srcset=”图片地址+空格+尺寸描述符,图片地址+空格+尺寸描述符,图片地址+空格+尺寸描述符….” 浏览器会当前浏览的环境进行感知,这个感知包括网速、界面分辨率、DPR(屏幕像素比)等等,然后在图片中选择一个进行加载。 实际上,在相同DPR下,浏览器会根据屏幕的分辨率加载图片,但是加载了大的图片后再缩小还是会使用大的图片。综合考虑的算法非...

猜你喜欢

Training_model(2)

已经清洗处理了两个数据文件: application_{train|test}.csv :客户详细信息 bureau.csv : 客户历史信用报告 下面对这两个数据中的特征进行合并,然后Light Gradient Boosting Machine训练模型,之前只用客户数据的预测评分结果是0.734,这次加入了客户信用报告信息 load data 新增加了客户历史信用记录 Build Model ...

微信小程序 页面跳转(传参跟不传参)

跳转页面传参 1.首先我的目录结构是这样的,并在 cinema.wxml 定义了一个点击事件 bindtap=‘indetai’ 2.然后在 cinema.js 的data里面定义了一个 score,并实现了 indetai 方法 3.在 detai.js 的 data 里面也定义一个 score ,再在 onLoad 函数里面接收传递过来的值 4.在页面上显示得到的值 这...

JavaSE 10(二维数组)

前言:      在经历了血雨腥风的地狱模式后本以为迎来了学习的平静,但二维数组又打破了这难得的平静!!!二维数组在java编程中同样也是很重要的知识点,因此在这里我将整理二维数组的知识点与重点,以及习题,便于自己的复习与巩固。 二维数组的声明与创建: 下面是声明二维数组的语法: 数据类型[][]数组名 : 数据类型数组名[][]; (允许这种方式 ,但并不推荐使用它...

深入理解 Linux 内存机制!| 技术头条

作者 | 阿文 责编 | 郭芮 作为一名Linux 系统运维工程,在日常管理 Linux 的时候,我们经常发现系统的空闲内存差不多总是被用完了。   通常,我们可以通过 top 和 free 查看内存使用情况:     执行 free:     为了更人性化地显示,我们可以加上 -h 选项:       可以看到我们的...