需求场景:由于服务器只有80端口可供外网访问,但需要部署两台tomcat来运行两个不同的项目,所以选择了nginx做反向代理

一个upstream tomcat_server对应一个  location{ } 配置

#第一台tomcat,8080端口
    upstream tomcat_server1 {
    ip_hash;
        server localhost:8080 ;
}
    #第二台tomcat,7080端口
    upstream tomcat_server2 {
    ip_hash;
    server localhost:7080 ;
}
    #一个server只能监听一个端口号,切记!!!
    server {
        listen       80;
        server_name  localhost;

#charset koi8-r;

#access_log  logs/host.access.log  main;
    #配置访问路径,
        location ^~ /web1/ {
        #设置对应tomcat端口跳转路径
            proxy_pass  http://tomcat_server1/web1/;
            proxy_set_header        Host            $host;
            proxy_set_header        X-Real-IP       $remote_addr;
            proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
            client_max_body_size 10m;
            client_body_buffer_size 128k;
            proxy_connect_timeout 90;
            proxy_send_timeout 90;
            proxy_read_timeout 90;
            proxy_buffer_size 4k;
            proxy_buffers 4 32k;
            proxy_busy_buffers_size 64k;
            proxy_temp_file_write_size 64k;
        }
    #配置访问路径
     location ^~ /web2/ {
        #设置对应tomcat端口跳转路径
            proxy_pass  http://tomcat_server2/web2/;
            proxy_set_header        Host            $host;
            proxy_set_header        X-Real-IP       $remote_addr;
            proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
            client_max_body_size 10m;
            client_body_buffer_size 128k;
            proxy_connect_timeout 90;
            proxy_send_timeout 90;
            proxy_read_timeout 90;
            proxy_buffer_size 4k;
            proxy_buffers 4 32k;
            proxy_busy_buffers_size 64k;
            proxy_temp_file_write_size 64k;
        }

同一个服务器部署两个Tomcat并用Nginx实现反向代理的更多相关文章

  1. 配置tomcat、nginx实现反向代理(需操作)

    配置tomcat.nginx实现反向代理现在我想通过nginx访问tomcat 这就要我们去修改nginx的核心配置文件,在其目录下的conf文件夹下的nginx.conf文件,那么首先我们就要了解该 ...

  2. wsl 2 unbuntu 部署 asp.net core 使用 nginx 做反向代理,调试文件上传失败

    继上一篇 asp.net core 3.1多种身份验证方案,cookie和jwt混合认证授权 的公司内部项目上线后发现文件上传功能有问题. 上传的文件超过50M以后前端就报错了,没有状态返回,也没有响 ...

  3. Asp.Net Core 使用Docker进行容器化部署(二)使用Nginx进行反向代理

    上一篇介绍了Asp.Net 程序在Docker中的部署,这篇介绍使用Nginx对Docker的实例进行反向代理 一.修改Nginx配置文件 使用winscp链接Liunx服务器,在/ect/nginx ...

  4. 同一个服务器部署多个tomcat

    下面我们把配置的详细过程写在下面,以供参考:(此例以配置三个Tomcat为例) 1. 下载apache-tomcat-7.0.63,下载下来的文件为apache-tomcat-7.0.63.zip. ...

  5. 部署Mvc Core SSL网站到Centos并用Nginx作为反向代理

    1. 先在本地比如~/Downloads下建立MVC项目 2. 生成mvc使用的ssl证书
 2.1. 生成.key文件
 openssl genrsa -des3 -out server.key 2 ...

  6. 如何在同一台服务器上部署两个tomcat

    因为测试的需要,有时我们必须在同一个服务器上部署两个tomcat,然后去做应用的部署,那么很多同学可能会觉得比较为难,找的资料也比较的不齐全,那么今天华华就来给大家讲讲如何部署2个tomcat,并能够 ...

  7. 使用Nginx实现反向代理过程(一台服务器部署两个网站)

    正向代理指的是客户端的 反向代理指的是服务端的 需要实现的反向代理: 1.首先使用SwitchHosts配置不同域名,如下:(SwitchHosts软件在上一篇博客有链接) 2.在Linux上部署两台 ...

  8. 【云服务器部署】---Linux下安装nginx

    [云服务器部署]---Linux下安装nginx 之前两篇,分别讲了:Linux下安装MySQL  和  springboot项目部署云服务器 nginx安装也是挺简单的.具体步骤如下: 第一步,下载 ...

  9. (转)同一服务器部署多个tomcat时的端口号修改详情

    背景:在同一个服务器上部署工程,总会遇到tomcat端口占用的情况,所有有必要分清楚各个端口的作用,和需要更改的端口. 同一服务器部署多个tomcat时,存在端口号冲突的问题,所以需要修改tomcat ...

随机推荐

  1. Eclipse无法正常启动,弹出对话框内容为 A Java Runtime...

    1.Eclipse无法正常启动,弹出对话框内容为 A Java Runtime...如下图: 原因分析:由于软件版本的更新或者安装其他开发软件无意之间修改了配置文件中的路径,众所周知,Java虚拟机( ...

  2. linux-centos系统下安装python3.5.4步骤

    查看当前python版本:python -V 查看Python可执行文件位置:which python [root@localhost bin]# which python/usr/bin/pytho ...

  3. spoj mpoint

    题解: 判断每一次加进来的时候有几个被破坏,几个添加 然后单调栈维护 代码: #include<bits/stdc++.h> using namespace std; ; ,now,oo= ...

  4. php使用gearman进行任务分发

    一.安装gearman 下载gearman源码包 1 https://launchpad.net/gearmand/+download 如: gearmand-1.1.12.tar.gz 下载php的 ...

  5. mask_rcnn训练自己的数据集

    1.首先从官方下载mask_rcnn源码https://github.com/matterport/Mask_RCNN 2.首先将demo.ipynb转换成demo.py,这里我顺便更改为适用于我自己 ...

  6. windows+nginx负载测试

    系统:windows2003nginx版本:1.7.3(官方推荐版本 #父节点 http upstream cluster_1{ ip_hash;#能较好地把同一个客户端的多次请求分配到同一台服务器处 ...

  7. python-数据类型练习题1

    1.有变量name = "aleX leNb" 完成如下操作:移除name变量对应的值两边的空格,并输出处理结果n1 = name.strip()print(n1) 结果:aleX ...

  8. ubuntu root 设置

    ubuntu16.04的root初始密码是随机的,每次开机都有一个新的root密码.具体修改方法是:sudo passwd输入自己用户名密码输入root密码su root输入密码登录

  9. case when 和 decode 的比较分析

    一.case when 与 if - else 类似,语句如下:CASE expr WHEN expr1 THEN return_expr1         [WHEN expr2 THEN retu ...

  10. thinkPHP验证码不显示问题

    使用验证码的时候,不显示图片时,要清理下输出缓存:ob_clean_end();