GCP CLB:如何在 Nginx.conf 中获取 X-Forwarded-For IP?
Posted
技术标签:
【中文标题】GCP CLB:如何在 Nginx.conf 中获取 X-Forwarded-For IP?【英文标题】:GCP CLB: how to get X-Forwarded-For IP in Nginx.conf? 【发布时间】:2020-06-18 22:58:32 【问题描述】:根据 GCP 文档,https://cloud.google.com/load-balancing/docs/https#target-proxies、X-Forwarded-For
包含多个 IP,例如1.2.3.4, 5.6.7.8
,其中1.2.3.4
是真实客户端IP,5.6.7.8
是CLB IP。
如何在nginx.conf
中获得1.2.3.4
?我想将它与 geoip 一起使用。
【问题讨论】:
您可以使用real IP module 分解X-Forwarded-For
并将$remote_addr
变量设置为适当的值。
【参考方案1】:
您可以使用real IP module 分解X-Forwarded-For
并将$remote_addr
变量设置为适当的值。
例如:
set_real_ip_from 5.6.7.8;
real_ip_header X-Forwarded-For;
real_ip_recursive on;
$remote_addr
的值从5.6.7.8
更改为1.2.3.4
。
在 Nginx 的许多发行版中,这个模块已经存在。使用nginx -V
确认存在哪些模块。
【讨论】:
以上是关于GCP CLB:如何在 Nginx.conf 中获取 X-Forwarded-For IP?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用适用于 Python 的 AWS CDK 通过 ARN 查找现有的经典负载均衡器 (CLB)?
nginx:如何划分 /etc/nginx/conf.d/default.conf ?