记一次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的主要内容,如果未能解决你的问题,请参考以下文章

记一次web系统漏洞整改过程(nginx+Tomcat)

记一次nginx 500

记一次创建svc代理失败

记一次生产环境Nginx日志骤增的问题排查过程

记一次全站代理切换

记一次php nginx配置权限问题