Nginx反向代理tomcat 财富值82

2016-10-09 08:11发布

有两个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;}

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

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答

其实你还是基于上面那个就行的。。然后基于二级域名的伪静态转发就好了。。具体不写了。原理是那样的。要试几次才确定写法的。

大致思路就是把 .domain.com/ 都转发到 http://127.0.0.1:8080/$1/$2

亲。。。你 root 没写, nginx 怎么给你代理文件?楼上那样就好。

谢邀!
我认为需要做动静分离,把js,css和图片给ngixn处理,不用tomcat处理。jsp的请求才转发给tomcat处理。

一周热门 更多>