nginx配置反向代理

本文介绍了如何在Nginx配置文件中实现从公网IP访问内网两服务(test和tiger),通过代理转发到172.16.0.8和49.234.55.50的8080和8081端口,详细说明了关键配置和代理设置。
摘要由CSDN通过智能技术生成

反向代理

  1. 在内网中开启两个服务

    # 服务前缀 test
    curl http://172.16.0.8:8080/
    # 服务前缀 tiger
    curl http://172.16.0.8:8081/
    
  2. 修改配置文件nginx.conf,部署在【159.75.79.151】中

    # For more information on configuration, see:
    #   * Official English Documentation: http://nginx.org/en/docs/
    #   * Official Russian Documentation: http://nginx.org/ru/docs/
    
    #user  nobody;
    worker_processes auto;
    error_log /usr/local/soft/nginx/logs/error.log;
    pid /run/nginx.pid;
    
    # Load dynamic modules. See /usr/share/doc/nginx/README.dynamic.
    include /usr/share/nginx/modules/*.conf;
    
    events {
        worker_connections 1024;
    }
    
    http {
        log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                          '$status $body_bytes_sent "$http_referer" '
                          '"$http_user_agent" "$http_x_forwarded_for"';
    
        access_log  /usr/local/soft/nginx/logs/access.log  main;
    
        sendfile            on;
        tcp_nopush          on;
        tcp_nodelay         on;
        keepalive_timeout   65;
        types_hash_max_size 2048;
    
        include             /usr/local/soft/nginx/conf/mime.types;
        default_type        application/octet-stream;
    
        # Load modular configuration files from the /etc/nginx/conf.d directory.
        # See http://nginx.org/en/docs/ngx_core_module.html#include
        # for more information.
        include /usr/local/soft/nginx/conf/conf.d/*.conf;
       
        server {
            # 对外开放的端口,默认是80
            listen       80;
            # 公网ip或域名
            server_name 159.75.79.151;
            root         /usr/share/nginx/html;
    
            # Load configuration files for the default server block.
            include /usr/local/soft/nginx/conf/default.d/*.conf;
    
            #location / {
            #}
           
           # 服务1映射信息
           location /test {
                proxy_http_version 1.1;
                proxy_pass http://172.16.0.8:8080/;
                # 转换请求方法,默认是get
                proxy_method POST;
                # nginx 服务端 ip:port
                proxy_set_header   Host    $host:$server_port;
                #获取 客户端地址设置到 header 中
                proxy_set_header   X-Real-IP   $remote_addr;
                # 获取所有转发请求的ip地址设置到 header 中
                proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
                client_max_body_size  1000M;
            }
    
          # 服务2映射信息
           location /tiger {
                proxy_http_version 1.1;
                proxy_pass http://49.234.55.50:8080/;
                proxy_set_header   Host    $host:$server_port;
                proxy_set_header   X-Real-IP   $remote_addr;
                proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
                client_max_body_size  1000M;
            }    
    
           # error_page 404 /404.html;
           # location = /404.html {
           # }
    
            #error_page 500 502 503 504 /50x.html;
            #location = /50x.html {
            #}
        }
    
    # Settings for a TLS enabled server.
    #
    #    server {
    #        listen       443 ssl http2 default_server;
    #        listen       [::]:443 ssl http2 default_server;
    #        server_name  _;
    #        root         /usr/share/nginx/html;
    #
    #        ssl_certificate "/etc/pki/nginx/server.crt";
    #        ssl_certificate_key "/etc/pki/nginx/private/server.key";
    #        ssl_session_cache shared:SSL:1m;
    #        ssl_session_timeout  10m;
    #        ssl_ciphers HIGH:!aNULL:!MD5;
    #        ssl_prefer_server_ciphers on;
    #
    #        # Load configuration files for the default server block.
    #        include /etc/nginx/default.d/*.conf;
    #
    #        location / {
    #        }
    #
    #        error_page 404 /404.html;
    #        location = /404.html {
    #        }
    #
    #        error_page 500 502 503 504 /50x.html;
    #        location = /50x.html {
    #        }
    #    }
    }
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ljt-tiger

thanks

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值