实验要求

  浏览器访问 8083.mine.com:8081 地址,(Nginx端口是8081)通过Nginx服务器反向代理监听请求,将请求转发到tomcat服务器上,实现真正内容的访问。

实验环境

一台已安装Nginx (port: 8081),tomcat-8.5.39 (port: 8083)的CentOS服务器;

测试主机:Win10

模拟n个http服务器作为目标主机

参考博客 (tomcat的单机多实例部署)进行实例创建。

   1. 服务器上tomcat的安装位置在 /usr/tomcat/tomcat-8.5.39;在它的同级目录下(/usr/tomcat)创建新文件夹tomcat-ins,用作所需创建的实例根目录。

   2. 参考下图,在 tomcat-ins 下创建 webapp01/webapp02 目录,分别对应两个实例目录。创建单个实例时,将正常安装的tomcat目录下的conf,webapps及logs文件夹整个复制到webapp01目录下(temp, work文件夹非必需项)。

      

   3.  修改/webapp01/conf/server.xml配置文件中的三处端口,使其端口号均不同于原来(默认)配置的端口信息,保存后退出。

    

    

    

   4. 编写批处理文件进行实例的启动。原博客中是在windows系统下创建的bat文件;由于我是CentOS系统,所以编写对应的shell脚本文件,内容如下:

    

   文件第二行实现的是修改当前窗口中的环境变量CATALINA_BASE值,该变量是定位基本配置信息所在的目录;

    start.sh脚本文件用来启动单个实例,所以若有多个实例,则需要对应多个脚本文件。

    ps:正常安装的tomcat-8.5.39下的“实例”仍然可以进入bin目录直接运行./startup.sh启动。

   6. 当前目录下直接运行 bash start.sh,显示如下信息即表示tomcat启动成功。

    

    

   7. 浏览器中测试tomcat欢迎页(注意防火墙的对应端口是否开放)。我在服务器上新创建的两个实例weapp01/webapp02,加上正常安装的tomcat,可以有三个              实例同时运行,分别对应端口是8083,8084,8085。

      

      

      

配置IP域名(Win10)

  修改Windows主机的HOSTS文件,配置IP及域名,如下:IP为服务器IP,域名仅为测试用的可任意。

    

配置Nginx

  找到 /usr/local/webserver/nginx/conf/ 目录下的配置文件 nginx.conf,进行编辑,修改如下,修改后重新启动Nginx。

  

浏览器测试

  通过域名+端口方式分别访问 8083.mine.com:8081 和 8084.mine.com:8081地址,此时是监听8081,而8081端口是Nginx服务器的运行端口,它通过反向代理接受客户机请求,找到server_name为8083.mine.com的server节点,根据proxy_pass对应的http路径,将请求转发到upstream tomcatserver1上,即端口号为8083的tomcat服务器。至此Nginx的反向代理配置测试完成。

      

       

        

Nginx配置实验反向代理的更多相关文章

  1. Nginx配置实例-反向代理实例:根据访问的路径跳转到不同端口的服务中

    场景 Ubuntu Server 16.04 LTS上怎样安装下载安装Nginx并启动: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/detai ...

  2. nginx 配置实例-反向代理

    反向代理实例一 虚拟机IP:192.168.116.129实现效果:使用 nginx 反向代理,访问 www.123.com 直接跳转到 虚拟机的192.168.116.129:8080  实验代码  ...

  3. Nginx 笔记(三)nginx 配置实例 - 反向代理、负载均衡、动静分离

    个人博客网:https://wushaopei.github.io/    (你想要这里多有) 一.反向代理 反向代理准备工作: (1)在 liunx 系统安装 tomcat,使用默认端口 8080 ...

  4. Nginx 配置 Jenkins 反向代理

    安装 Nginx 参考之前的一篇文章 Nginx 安装配置 安装 Jenkins 参考之前的一篇文章 Linux 搭建 Jenkins Nginx 配置 Jenkins 的反向代理 # /etc/ng ...

  5. Nginx配置实例-反向代理实现浏览器请求Nginx跳转到服务器某页面

    场景 Ubuntu Server 16.04 LTS上怎样安装下载安装Nginx并启动: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/detai ...

  6. Nginx配置Tomcat8反向代理出现 java.lang.IllegalArgumentException: The character [_] is never valid in a domain name.

    在配置Nginx的反向代理,访问反向代理的路径而出现了异常 java.lang.IllegalArgumentException: The character [_] is never valid i ...

  7. centos7安装Nginx 配置及反向代理

    Nginx是俄罗斯人编写的十分轻量级的HTTP服务器,Nginx,它的发音为“engine X”,是一个高性能的HTTP和反向代理服务器,同时也是一个IMAP/POP3/SMTP 代理服务器.Ngin ...

  8. Nginx配置WebSocket反向代理(Tomcat+Nginx)

    @toc WebSocket 和HTTP协议不同,但是WebSocket中的握手和HTTP中的握手兼容,它使用HTTP中的Upgrade协议头将连接从HTTP升级到WebSocket.这使得WebSo ...

  9. nginx::配置https/反向代理

    vim /etc/nginx/nginx.conf user nginx; worker_processes ; error_log /var/log/nginx/error.log warn; pi ...

随机推荐

  1. bayaim_mysql_忘记密码 [仅限 5.6以下]

    bayaim_mysql_忘记密码 [仅限 5.6以下] 原创 作者:bayaim 时间:2017-12-26 10:47:41 8 0删除编辑 忘记root密码------------------- ...

  2. centos 的系统管理命令 service systemctl

    centos 的 systemctl 命令 systemctl is-enabled *.service     #查询服务是否开机启动 systemctl enable *.service    # ...

  3. 批量bat脚本复制文件或文件夹

    主要用于在本地下,复制文件或文件夹到当前文件夹 @echo off echo 复制文件或文件夹到当前文件夹(复制文件选择[],复制文件夹选择[]) set /p num=输入选择的数字: : set ...

  4. PHP连接Navicat For Mysql并取得数据

    Navicat For Mysql中新建数据库 数据库中新建表 保存表 表中添加数据 打开ide,输入以下php代码,使用localhost打开该php文件 <?php // ip地址.用户名. ...

  5. python爬虫之深度爬取实例

    写了一个之前没完成的项目,代码优化不够,速度有点慢,应该也有错误的地方,望大佬看了之后能给点建议......... 这是开始的url,先看一下它的网页结构:http://www.cymodel.net ...

  6. Jsoup获取部分页面数据失败 Unhandled content type. Must be text/*, application/xml, or application/xhtml+xml

    用Jsoup在获取一些网站的数据时,起初获取很顺利,但是在访问某浪的数据是Jsoup报错,应该是请求头里面的请求类型(ContextType)不符合要求. 请求代码如下: private static ...

  7. fis3 相关

    fis3 静态资源存放 windows: C:\Users\Administrator\AppData\Local\.fis3-tmp

  8. EM-高斯混合模型

    EM-高斯混合模型 认识 前面为了直观认识 EM 算法, 用的"扔硬币"的案例, 是为了简化和直观, 而稍微偏应用和深入一点是高斯模型分类,这样一个话题. 就好比我们现在有一堆的数 ...

  9. MySQL实战45讲学习笔记:第三十四讲

    一.本节概述 在实际生产中,关于 join 语句使用的问题,一般会集中在以下两类: 1. 我们 DBA 不让使用 join,使用 join 有什么问题呢?2. 如果有两个大小不同的表做 join,应该 ...

  10. [Codeforces1250E] The Coronation

    [Codeforces1250E] The Coronation The Coronation 又是一道并查集...最近做的并查集咋这么多... 思路 首先,维护元素间关系的题想到并查集. 因为这里涉 ...