nginx反向代理多个tomcat

nginx即可用做web服务器也可以用反向代理(负载均衡)(自己了解反向代理和正向代理-详情),今天介绍一下反向代理多个tomcat,先了解怎么修改端口同时运行多个tomcat服务器-详情,然后还要解析自己的域名,解析为*.lookk.cn,星号是匹配自己域名的子域名(例order.lookk.cn也解析到自己服务器的公网IP),这样就可以用项目名做为子域名了,最后在nginx的配置文件/etc/nginx/nginx.conf的http里添加一下代码

server {
        listen       80;
        server_name  order.lookk.cn;    #要访问的域名,我这里用的测试域名,如果有多个,用空格分开

        charset utf8;

        location / {
            proxy_pass       http://127.0.0.1:8080;               #映射到代理服务器,可以是ip加端口,   或url 
            proxy_set_header Host      $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

       }
    }

    server {
        listen       80;
        server_name  javatest.lookk.cn;    #要访问的域名,我这里用的测试域名,如果有多个,用空格分开

        charset utf8;

        location / {
            proxy_pass       http://127.0.0.1:8090;               #映射到代理服务器,可以是ip加端口,   或url 
            proxy_set_header Host      $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

       }
    }

运行多个tomcat时,一般一个tomcat最多运行一个项目,这个项目要放在ROOT目录下-详情,这样才能使proxy_pass http://127.0.0.1:8080; 直接访问该项目

优点: 用nginx反向代理tomcat有一下几个优点
1、可以同时运行多个tomcat
2、访问路径可以隐藏80端口
3、可以用项目名做为域名,自己访问到改项目 例:order.lookk.cn自己访问到order项目
4、还可以负载均衡,一个项目运行在多个服务器上,这个自己去探索。

你可能感兴趣的:(tomcat,nginx)