将用户的IP地址传递给另一个Web服务器

时间:2017-02-17 09:11:09

标签: php curl nginx

我有2个Web服务器,并且在某个时候,Web服务器A需要从Web服务器B请求一些数据,并且需要发送用户的IP地址。但是,如果我只是在服务器上调用file_get_contents(),B将检测服务器A的IP地址而不是用户。第二个选项是在查询字符串中传递IP地址,但服务器B上的nginx是使用geoip模块编译的,我在变量$_SERVER['COUNTRY_CODE']中找到国家/地区代码。

所以我的问题是,有没有办法使用CURL在请求中将用户的IP地址从服务器A传递到服务器B?可能我需要设置一些标题,这个标题将被geoip模块考虑?

1 个答案:

答案 0 :(得分:0)

在服务器A上使用它:

curl www.domain.tld --header "X-Forwarded-For: xxx.xxx.xxx.xxx"

您需要在服务器A上用xxx.xxx.xxx.xxx替换客户端IP。

根据您的应用程序,您可能需要指示它验证服务器B上的X-Forwarded-For