Nginx作为代理服务

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


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作为代理服务)