记一次nginx代理两个tomcat
Posted zhang-java6514
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了记一次nginx代理两个tomcat相关的知识,希望对你有一定的参考价值。
今天在公司里遇到一个问题,就是一个服务器上发布两个tomcat,端口号什么的都改完了,就是证书这一块过不去。突然想起来nginx可以做反向代理,就试着用了一下nginx。
以前也没有用过,于是在网上查找了大量的关于nginx的文章。在这里不得不吐槽一下, 网上的坑实在是太多了,不知道是我的理解有问题,还是滥竽充数的人太多。试了好多次终于让我搞定了。话不多说,直接贴配置,参数详情就不在这里多做解释。
注:由于用的是windows服务器,要修改服务器的host文件 在最后一行加上 127.0.0.1 test.myweb.com 127.0.0.1 test.myweb1.com 。一定要换行!!! linux的没试过,不知道要不要修改系统文件。
1 http { 2 include mime.types; 3 default_type application/octet-stream; 4 5 sendfile on; 6 //这里的test.myweb.com要和你的server_name对应 7 upstream test.myweb.com{ 8 //这是你的tomcat地址加端口 9 server localhost:8080; 10 } 11 //同上 12 upstream test.myweb1.com{ 13 server localhost:8088; 14 } 15 //第一个代理 16 server { 17 //你的nginx端口默认80 18 listen 80; 19 //和上面的upstream对应 20 server_name test.myweb.com; 21 //拦截的你访问请求 22 location / { 23 拦截的请求地址,和你的server_name对应 24 proxy_pass http://test.myweb.com; 25 proxy_set_header Host $http_host; 26 proxy_set_header X-Real-IP $remote_addr; 27 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 28 } 29 } 30 //第二个代理,同上,和第二个upstream对应 31 server { 32 listen 80; 33 server_name test.myweb1.com; 34 35 location / { 36 proxy_pass http://test.myweb1.com; 37 proxy_set_header Host $http_host; 38 proxy_set_header X-Real-IP $remote_addr; 39 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 40 } 41 } 42 43 44 }
以上是关于记一次nginx代理两个tomcat的主要内容,如果未能解决你的问题,请参考以下文章