nginx 反向代理之 proxy_set_header

proxy_set_header用来设定被代理服务器接收到的header信息。

语法:proxy_set_header field value;
field :为要更改的项目,也可以理解为变量的名字,比如host
value :为变量的值

如果不设置proxy_set_header,则默认host的值为proxy_pass后面跟的那个域名或者IP(一般写IP)

proxy_set_header X-Real-IP $remote_addr;
和
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

用来设置被代理端接收到的远程客户端IP,如果不设置,则header信息中并不会透传远程真实客户端的IP地址。

配置示例:

server {
    listen 80;
    server_name www.xxx.com;

    location /aming/
    {
    proxy_pass http://192.168.1.10:8080/linux/;
    proxy_set_header host $host;
    proxy_set_header X-Real-IP      $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

这段配置也是一般情况下,反向代理的标准配置。

原文地址:https://www.cnblogs.com/yyxianren/p/10831564.html