515439429 发表于 2018-12-3 10:34:30

Nginx反代Tomcat项目

  需求背景:
  直接访问Tomcat项目路径如下:

  http://10.8.1.5:8080/erp

  要求使用www.erp.com访问是可以访问至http://10.8.1.5:8080/erp
  

  需求分析:
  这里不可以使用简单的反向代理,因为后端服务器有目录(erp)存在,而为了访问友好www.erp.com后端不能加目录,所以不能纯粹的使用nginx根据目录来匹配后端服务器,最终实现效果nginx配置如下:

  

server {
    listen      80;
    server_name www.erp.com;
    location / {
      rewrite ^/(.*)$ http://www.erp.com/erp/$1 permanent;
    }
    location /erp {
      proxy_pass http://10.8.1.5:8080/erp;
      proxy_next_upstream http_500 http_502 http_503 error timeout invalid_header;
      proxy_set_header Host $host;
      proxy_set_header X-Forwarded-For $remote_addr;
    }
    access_log/var/log/nginx/erp.log main;
}  

  以上配置只反代了一台服务器,如果有多台服务器可以使用upstream模块解决,解决方法略



页: [1]
查看完整版本: Nginx反代Tomcat项目