开发者社区> 问答> 正文

nginx可否代理tomcat 下面的两个工程?

有个需求, 本来公司 用 tomcat 做域名 转发, tomcat 里面配置了好几个 域名
比如 XXX.com --> tomcat/aa xxx.com -->tomcat/bb 这样子的, 在tomcat 里面
配置方式

<Host name="www.taochexian.com.cn"  appBase="webapps/tcx"
            unpackWARs="true" autoDeploy="true">
            <Alias>taochexian.com.cn</Alias> 
            <Context  path="" docBase="" reloadable="true" />
      </Host>
      <Host name="www.91vtui.com"  appBase="webapps/wxgg"
            unpackWARs="true" autoDeploy="true">
            <Alias>91vtui.com</Alias> 
            <Context  path="" docBase="" reloadable="true" />
      </Host>

如果修改为用nginx 代理 里面的工程的话, 是否可以代理 tomcat 里面的 这两个工程

upstream servs {
        #weigth参数表示权值,权值越高被分配到的几率越大
        #本机上的Squid开启3128端口
        #server http://127.0.0.1:80/wxgg weight=5;
        server 127.0.0.1:8080  ;
    }
     
    server {
        listen       80;
        #定义使用www.xx.com访问
        server_name localhost;  
        # 单独的这里配置 tomcat 转发路径
         
        #location ~ \.(htm|html|gif|jpg|jpeg|png|ico|rar|css|js|zip|txt|flv|swf|doc|ppt|xls|pdf)$ {
           # root  /home/b_apache-tomcat-7.0.59/webapps/wxgg;
            #access_log off;
           # expires 24h;
        #}
        location / { 
            proxy_pass http://servs;
            proxy_redirect          off;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            client_max_body_size    10m;
            client_body_buffer_size 128k;
            proxy_connect_timeout   300;
            proxy_send_timeout      300;
            proxy_read_timeout      300;
            proxy_buffer_size       4k;
            proxy_buffers           4 32k;
            proxy_busy_buffers_size 64k;
            proxy_temp_file_write_size 64k;
        }
         
        location ~ ^/(WEB-INF)/ {
            deny all;
        }
    }

这样子只能代理整个tomcat , 没法指定到 具体的工程, 不知有什么好的解决方法?

展开
收起
落地花开啦 2016-06-01 16:38:18 2749 0
1 条回答
写回答
取消 提交回答
  • 喜欢技术,喜欢努力的人
    upstream servs {
            #weigth参数表示权值,权值越高被分配到的几率越大
            #本机上的Squid开启3128端口
            #server http://127.0.0.1:80/wxgg weight=5;
            server taochexian.com.cn:8080  ;
            server taochexian.com.cn:80;
        }
         
        server {
            listen       8081;
            #定义使用www.xx.com访问
            server_name taochexian.com.cn;  
            # 单独的这里配置 tomcat 转发路径

    这样变相解决了 转发的方式, 还是使用了tomcat 里面的 虚拟路径解决的

    2019-07-17 19:23:30
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
《Nginx 代理系统常用手册》 立即下载
CentOS Nginx PHP JAVA 多语言镜像使用手 立即下载
CentOS Nginx PHP JAVA多语言镜像使用手册 立即下载