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

本文涉及的产品
.cn 域名,1个 12个月
简介: 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,我复制了两个


20190614224020115.png

1.操作C:\Windows\System32\drivers\etc 路径下的hosts文件

(1) 首先进入对应路径,Windows系统一般都是这个路径,找到hosts文件打开(注意要是管理员身份下的编辑模式,否则有的Windows系统打开没有权限编辑和保存)

20190614220413107.png


(2) 因为我是Windows7系统和Windows10有区别,下图看红框内是我添加的,因为我在本机做的演示,所以ip是127.0.0.1,域名也是我写的一个虚拟域名。修改好后保存


Windows7系统的hosts文件:

20190614220554416.png

我还特意找了一个Windows10的hosts文件做对比,如果你是Windows10可以仿照上面的在这个下面添加,修改好后保存:


20190614221330751.png

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端口:


20190614225359321.png


8001端口:

20190614225426315.png


3. Nginx \conf 路径下的nginx.conf文件

(1)打开nginx.conf,如下图添加,代码在下面

20190614230028320.png


可以看出来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即可启动

20190614230446599.png

问题: 如果出现ngnix启动不成功,你之前又装过SQL server,那么在服务中找到SQL Server Reporting…停掉即可。

20190614231105236.png

OK了!

目录
相关文章
|
1月前
|
缓存 NoSQL 网络安全
【Azure Redis 缓存】Azure Redis服务开启了SSL(6380端口), PHP如何访问缓存呢?
【Azure Redis 缓存】Azure Redis服务开启了SSL(6380端口), PHP如何访问缓存呢?
|
30天前
|
运维 Serverless 网络安全
函数计算产品使用问题之通过仓库导入应用时无法配置域名外网访问,该如何排查
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
1天前
|
PHP
ThinkPHP 多应用配置,及不同域名访问不同应用的配置【详解】
本文详解了在ThinkPHP框架中配置多应用的方法,包括安装扩展、删除默认controller文件夹、创建多应用、修改配置文件以启用多应用、测试访问以及如何配置不同域名访问不同应用的步骤。
ThinkPHP 多应用配置,及不同域名访问不同应用的配置【详解】
|
25天前
|
NoSQL 关系型数据库 Redis
mall在linux环境下的部署(基于Docker容器),Docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongo
mall在linux环境下的部署(基于Docker容器),docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongodb、minio详细教程,拉取镜像、运行容器
mall在linux环境下的部署(基于Docker容器),Docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongo
|
1月前
|
缓存 应用服务中间件 nginx
安装nginx-http-flv-module模块
本文介绍如何为Nginx安装`nginx-http-flv-module`模块。此模块基于`nginx-rtmp-module`二次开发,不仅具备原模块的所有功能,还支持HTTP-FLV播放、GOP缓存、虚拟主机等功能。安装步骤包括:确认Nginx版本、下载相应版本的Nginx与模块源码、重新编译Nginx并加入新模块、验证模块安装成功。特别注意,此模块已包含`nginx-rtmp-module`功能,无需重复编译安装。
79 1
|
30天前
|
JSON 安全 网络协议
【Azure Policy】添加策略用于审计Azure 网络安全组(NSG)规则 -- 只能特定的IP地址允许3389/22端口访问
为了确保Azure虚拟机资源的安全管理,只有指定IP地址才能通过RDP/SSH远程访问。解决方案包括使用Azure Policy服务扫描所有网络安全组(NSG),检查入站规则中的3389和22端口,并验证源地址是否在允许的IP列表中。不符合条件的NSG规则将被标记为非合规。通过编写特定的Policy Rule并定义允许的IP地址参数,实现集中管控和合规性检查。
|
1月前
|
安全 网络安全
【Azure 环境】当本地网络通过ER专线与Azure云上多个虚拟网络打通,如何通过特定的网络策略来限制本地部分网段访问云上虚拟机22端口?
【Azure 环境】当本地网络通过ER专线与Azure云上多个虚拟网络打通,如何通过特定的网络策略来限制本地部分网段访问云上虚拟机22端口?
|
1月前
|
网络协议
【Azure 应用服务】探索在Azure上设置禁止任何人访问App Service的默认域名(Default URL)
【Azure 应用服务】探索在Azure上设置禁止任何人访问App Service的默认域名(Default URL)
|
4月前
|
域名解析 弹性计算 Linux
阿里云购买云服务器、注册域名、备案及绑定图文教程参考
本文为大家介绍了2024年购买阿里云服务器和注册域名,绑定以及备案的教程,适合需要在阿里云购买云服务器、注册域名并备案的用户参考,新手用户可通过此文您了解在从购买云服务器到完成备案的流程。
阿里云购买云服务器、注册域名、备案及绑定图文教程参考
|
25天前
|
域名解析 运维
阿里云日常运维-购买域名
这篇文章是关于如何在阿里云进行日常运维,包括购买域名的详细步骤和一些推荐阅读资源。
53 4