0

我正在使用 Haproxy 进行负载平衡。

我的网站在 ruby​​ on rails 上运行。

我做了一些谷歌搜索并知道添加这一行

option forwardfor header X-Client

在 /etc/haproxy.cfg 文件中。

在我正在使用的 Rails 应用程序中

request.env["HTTP_X_FORWARDED_FOR"]

但这给了我我的主应用程序 IP

如何获取客户端 IP 地址。

4

2 回答 2

0

option forwardfor指令之上,您还应该使用option http-server-close. 如果不这样做,HAProxy 只会将标头添加到初始请求中。

如果你这样做并重新启动 HAProxy,它应该可以工作。

于 2013-07-30T13:36:19.150 回答
0

我还觉得奇怪的是,您的代码依赖于变量名称“HTTP_X_FORWARDED_FOR”,并且标头名称是 X-Client。请只使用“option forwardfor”,它将设置我认为您的应用程序正在寻找的 X-Forwarded-For 标头。

于 2013-07-30T20:04:52.590 回答