美文网首页
Nginx 反向代理

Nginx 反向代理

作者: 天一方蓝 | 来源:发表于2019-08-14 00:35 被阅读0次

    什么是反向代理

    通常的代理服务器,只用于代理内部网络对 Internet 的连接请求,客户机必须指定代理服务器,并将本来要直接发送到 Web 服务器上的 HTTP 请求发送到代理服务器中由代理服务器向 Internet 上的 Web 服务器发起请求,最终达到客户机上网的目的。

    而反向代理(Reverse Proxy)方式是指以代理服务器来接受 Internet 上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给 Internet 上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。

    image.png

    Nginx 反向代理 Tomcat

    需求

    • 两个 tomcat 服务通过 nginx 反向代理
    • nginx 服务器:192.168.75.145:80
    • tomcat1 服务器:192.168.75.145:9090
    • tomcat2 服务器:192.168.75.145:9091

    启动 Tomcat 容器

    启动两个 Tomcat 容器,映射端口为 9090 和 9091,docker-compose.yml 如下:

    version: '3'
    services:
      tomcat1:
        image: tomcat
        container_name: tomcat1
        ports:
          - 9090:8080
    
      tomcat2:
        image: tomcat
        container_name: tomcat2
        ports:
          - 9091:8080
    

    配置 Nginx 反向代理

    修改 /usr/local/docker/nginx 目录下的 nginx.conf 配置文件:

    user  nginx;
    worker_processes  1;
    
    events {
        worker_connections  1024;
    }
    
    http {
        include       mime.types;
        default_type  application/octet-stream;
    
        sendfile        on;
    
        keepalive_timeout  65;
        
        # 配置一个代理即 tomcat1 服务器
        upstream tomcat_server1 {
            server 192.168.75.145:9090;
        }
    
        # 配置一个代理即 tomcat2 服务器
        upstream tomcat_server2 {
            server 192.168.75.145:9091;
        }
    
        # 配置一个虚拟主机
        server {
            listen 80;
            server_name admin.ooqiu.com;
            location / {
                    # 域名 admin.ooqiu.com 的请求全部转发到 tomcat_server1 即 tomcat1 服务上
                    proxy_pass http://tomcat_server1;
                    # 欢迎页面,按照从左到右的顺序查找页面
                    index index.jsp index.html index.htm;
            }
        }
    
        server {
            listen 80;
            server_name service.ooqiu.com;
    
            location / {
                # 域名 service.ooqiu.com 的请求全部转发到 tomcat_server2 即 tomcat2 服务上
                proxy_pass http://tomcat_server2;
                index index.jsp index.html index.htm;
            }
        }
    }
    

    相关文章

      网友评论

          本文标题:Nginx 反向代理

          本文链接:https://www.haomeiwen.com/subject/zifwjctx.html