一叶知秋.

业精于勤,荒于嬉;行成于思,毁于随。

nginx代理httpd服务时X-Forwarded-For信息头的处理

X-Forwarded-For的定义:
简称XFF头,它代表客户端,也就是HTTP请求端的真实IP,只有在通过了HTTP代理或者负载均衡器时才会添加;

在默认情况下,nginx并不会对X-Forwarded-For头做任何的处理,除非使用"proxy_set_header"参数:
proxy_set_header X-Forwarded-For $remote_addr;
或者
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

$proxy_add_x_forwarded_for变量包含客户端请求头中的"X-Forwarded-For",与$remote_addr用逗号分开,如果没有"X-Forwarded-For" 请求头,则$proxy_add_x_forwarded_for等于$remote_addr;

$remote_addr的值是客户端的IP;

配置实现:

  1. 没有配置X-Forwarded-For查看httpd的access日志

  1. nginx-proxy配置:
    proxy_set_header X-Forwarded-For $remote_addr;

  1. httpd的配置:

  1. 验证:

posted @ 2020-11-10 17:13  ccku  阅读(727)  评论(0编辑  收藏  举报