jsp - Nginx反向代理tomcat

查看:539
本文介绍了jsp - Nginx反向代理tomcat的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

有两个jsp应用,本地访问地址如下

http://127.0.0.1:8080/app1
http://127.0.0.1:8080/app2

通过下面的配置可以实现 http://domain.com/app1http://domain.com/app2 的访问

server {
    listen    80;
    server_name    domain.com;
    charset    utf-8;
    location /{
        proxy_pass http://127.0.0.1:8080/;
        proxy_redirect  off;
        proxy_set_header  X-Real-IP $remote_addr;
        proxy_set_header  X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

现在想用两个域名来访问这两个应用
通过 http://app1.domain.com 来访问 http://127.0.0.1:8080/app1
通过 http://app2.domain.com 来访问 http://127.0.0.1:8080/app2
配置如下

server {
    listen    80;
    server_name  app1.domain.com;
    charset utf-8;
    location /{
        proxy_pass http://127.0.0.1:8080/app1;
        proxy_redirect  off;
        proxy_set_header  X-Real-IP $remote_addr;
        proxy_set_header  X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

server {
    listen    80;
    server_name  app2.domain.com;
    charset utf-8;
    location /{
        proxy_pass http://127.0.0.1:8080/app2;
        proxy_redirect  off;
        proxy_set_header  X-Real-IP $remote_addr;
        proxy_set_header  X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

结果只能显示首页,静态资源都无法加载

#我感觉应该这么写可是有语法错误
if ($uri ^/$){proxy_pass http://127.0.0.1:8080/app1;}
if ($uri ^/app1){proxy_pass http://127.0.0.1:8080/$request_uri;}

所以到底应该应该如何配置?

解决方案

无法加载是什么意思?是502?还是jsp中的静态路径不对?

这篇关于jsp - Nginx反向代理tomcat的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆