美文网首页Nginx
Nginx作为代理服务

Nginx作为代理服务

作者: 燃燃的爸爸 | 来源:发表于2019-05-28 13:06 被阅读0次

    一、代理服务
    代理-代为办理(代理理财、代理收货等等)


    image.png
    image.png

    1.1正向代理

    image.png

    1.2反向代理

    image.png

    1.3代理区别

     区别在于代理的对象不一样
     正向代理代理的对象是客户端
     反向代理代理的对象是服务端
    

    1.4配置语法

    Syntax:proxy_pass URL;
    Default:-
    Context: location,if in location,limit_except
    URL 可以是
    http://localhost:8000/uri/
    https://192.168.1.1:8000/uri/
    http://unix:/tmp/backend.socket:/uri/;(socket的方式)

    1.5正向代理场景

     location / {
      #  if ( $http_x_forwarded_for !~* "^192\.168\.0\.88") {
      #      return 403;
    #}
        root /opt/app/code;
        index index.html index.htm;
    }
    
    image.png

    访问正常
    添加设置(思考下这里为什么没有用allow,deny呢?)

     location / {
        if ( $http_x_forwarded_for !~* "^192\.168\.0\.88") {
            return 403;
    }
        root /opt/app/code;
        index index.html index.htm;
    }
    
    image.png

    发现访问失败,因为这里现在只有192.168.0.88才能符合条件,其他都返回403。
    在192.168.0.88上安装一个nginx,添加正向代理来完成:

    server {
      listen 80;
      access_log /var/log/nginx/test_proxy.access.log main;
      location / {
      proxy_pass http://$http_host$request_uri;
    }
    }
    

    1.6其他配置语法
    Syntax: proxy_buffering on | off;
    Default: proxy_buffering on;
    Context:http,server,location
    扩展:proxy_buffer_size,proxy_buffers、proxy_busy_buffers_size
    1.7 头信息
    Syntax:proxy_set_header field value;
    Default: proxy_set_header Host $proxy_host;
    proxy_set_header Connection close;
    Context:http,server,location
    扩展:proxy_hide_header,proxy_set_body
    1.9 超时(nginx作为代理)
    Syntax:proxy_connect_timeout time;
    Default: proxy_connect_timeout 60s;
    Context:http,server,location
    扩展:proxy_read_timeout,proxy_read_timeout

    这种配置如果重复觉得麻烦可以利用include 文件来引用。

    相关文章

      网友评论

        本文标题:Nginx作为代理服务

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