HTTP_X_FORWARDED_FOR为空 和 HTTPS

时间:2021-11-24 13:46:30

用户行为分析是很多网站都要做的模块。

其中用户IP是个很有用的信息。

网上有GeoIP Lite版本可以用来记录用户IP还可以得知地址信息。尽管地址信息不完全准确。


在记录用户IP是,如果用户使用了代理,那么IP地址是通过HTTP_X_FORWARDED_FOR传递的。

在记录这些信息时,务必注意HTTP和HTTPS的差别。很多网站用户登录/注册页面都是HTTPS的。

在HTTPS中,数据(header)是端到端加密的。取不到HTTP_X_FORWARDED_FOR信息。

所以如果想记录用户IP,得在跳转到HTTPS页面之前记录,而且执行代码不能放在被缓存的页面中。