本文基于rancher界面化操作


如果使用k8s方式
执行kubectl -n kube-system edit cm nginx-configuration
添加如下内容
compute-full-forwarded-for: "true"
forwarded-for-header: "X-Forwarded-For"
use-forwarded-headers: "true"
最后在业务程序获取使用x-Original-Forwarded-For。
在客户端获取示例
let ip = null
let ipStr = req.headers['X-Real-IP'] || req.headers['x-forwarded-for']
if (ipStr) {
let ipArr = ipStr.split(',')
if (ipArr || ipArr.length) {
ip = ipArr[0]
} else {
ip = req.ip().substring(req.ip().lastIndexOf(':') + 1)
}
}
本文介绍如何通过Rancher界面操作及Kubernetes命令行工具kubectl,为Nginx配置代理转发功能,详细说明了如何设置compute-full-forwarded-for、forwarded-for-header与use-forwarded-headers参数,以及在业务程序中如何正确读取X-Forwarded-For头信息。
3307

被折叠的 条评论
为什么被折叠?



