我正在做一个应用程序,我需要在其中找到客户的 IP 地址。我使用 request.remote_ip 来获取客户端的 IP,并获取客户端的公共 IP 地址以进行 http 请求。当它是一个 https 请求时,remote_ip 获取了不同的 ip,例如 10.114.237.132(我认为这是一个私有 ip)而不是公共 ip 地址。我也试过 request.env['REMOTE_ADDR'] 我的问题是如何找到用于 https 请求的客户端的远程 IP。
问问题
919 次
1 回答
0
如果这是负载均衡器的 IP,请尝试确定它是否可以为您提供 HTTP 标头来获取客户端 IP。如果您可以配置它或者它已经证明它,您可以使用此方法Request.headers()方法检查 HTTP 标头。
您应该寻找的标题是X-Forwarded-For。
于 2013-05-16T12:49:22.730 回答