通过htaccess捕获X-FORWARDED-FOR头信息?

4
我正在共享服务器上运行我的网站,希望能够捕获使用Puffin浏览器的用户的“真实”IP地址。Puffin在其自己的云服务器上呈现网站内容,然后将结果传递给用户的浏览器。缺点是用户的IP地址显示为Puffin云服务器的IP地址而不是他们自己的IP地址。然而,Puffin确实通过X-FORWARDED-FOR头传递了“真实”的IP地址。不幸的是,我的主机提供商会剥离此信息。
我问过他们是否有任何方法可以解决这个问题,他们回答说(关于X-FORWARDED-FOR头):
“您可以使用.htaccess文件中的环境变量来捕获它。”
到这一步,我已经无法理解了,所以我想知道是否有人能够简单地解释如何处理这个问题?
1个回答

3
如果他们剥离了头部信息,你甚至可能无法在htaccess文件中捕获它。但是你需要一个类似这样的东西:
RewriteEngine On
RewriteCond %{HTTP:X-FORWARDED-FOR} ^(.+)$
RewriteRule ^ - [L,E=X-FORWARDED:%1]

您可以通过以下方式(使用php)获取环境变量:$_SERVER['X-FORWARDED']

该环境变量是通过代理服务器转发的信息,可用于识别客户端的IP地址和其他相关信息。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接