zoukankan      html  css  js  c++  java
  • nginx*小结

    还挺好用的,分2种,一种是原本支持的7层代理,http或者https ,另一种是后面支持的tcp,udp代理

    1. 7层代理

    主要是这个 https://nginx.org/en/docs/http/ngx_http_proxy_module.html

    location / {
        proxy_pass       http://localhost:8000;
        proxy_set_header Host      $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
    

    一般要加一个proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 获取用户真实ip

    https的话

    server{
        listen 443 ssl;
        server_name example.cn;
        ssl_certificate    a.crt;
        ssl_certificate_key a.key;
    
        location / {
            proxy_pass       https://abc.om; 
            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块中 。当然还有一些很多参数可以调。

    2. 4层代理

    https://nginx.org/en/docs/stream/ngx_stream_proxy_module.html

        server {
            listen 127.0.0.1:12345;
            proxy_pass 127.0.0.1:8080;
        }
    
        server {
            listen 12345;
            proxy_connect_timeout 1s;
            proxy_timeout 1m;
            proxy_pass example.com:12345;
        }
    
        server {
            listen 53 udp reuseport;
            proxy_timeout 20s;
            proxy_pass dns.example.com:53;
        }
    
        server {
            listen [::1]:12345;
            proxy_pass unix:/tmp/stream.socket;
        }
    
    
    

    官网的几个例子,但是要包在stream块中

    stream{
        server {
            listen 127.0.0.1:12345;
            proxy_pass 127.0.0.1:8080;
        }
    }
    

    4层支持证书,功能还是比较强大。

    3. 4层7层异同

    基本上大部分应用都是基于7层的,可以做多域名代理,如果4层,只能通过端口来转发不通的服务了。用7层有日志,4层没法记录日志。

  • 相关阅读:
    引用的难点:函数返回值是引用(引用当左值)
    引用的意义与本质
    引用做函数参数
    Uva
    Uva
    Uva
    暑假集训-8.06总结
    暑假集训-8.05总结
    CH1801( 括号画家)
    最大异或对
  • 原文地址:https://www.cnblogs.com/gqdw/p/15026542.html
Copyright © 2011-2022 走看看