• 欢迎 游客 您的光临,下载之前请先阅读 积分规则 。任何技术问题请在论坛提问,本站定制插件、模板主题。售前、售后问题请联系QQ:5916171
    本站自由发布资源可赚取积分及人民币(可提现)(保证资源真实可用,如被举报封号处理。谨慎分布)。
  • 即日起发表主题、回帖、发布&更新资源、创建&回复私信、发布&回复个人动态均需要验证手机号码,其它不受影响。如不便可进群提问。点击链接加入群聊【XenForo讨论社区】:群号1:143277648

技巧教程 套了CloudFlare获得真实IP

  • #2
在网站目录/src/config.php里加上:
收费内容
即可获得用户真实IP
建议先将以下内容在网站/目录下新建并写入test.php:
检测IP传入是否正常:
扩展 折叠 复制
<?php
    
error_reporting(0);
echo "标头HTTP_CF_CONNECTING_IP所获取到的IP:" . $_SERVER["HTTP_CF_CONNECTING_IP"];
echo "<br>";
echo "标头HTTP_X_FORWARDED_FOR所获取到的IP:" . $_SERVER["HTTP_X_FORWARDED_FOR"];

?>

然后浏览器访问/test.php。

正常来说,返回都会是俩段IP,因为同时传入了这俩个标头。而特殊情况只会返回一个,或者没返回,这种情况要检查标头传入是否正常,也就是上级服务器是否有这些标头传入源站。

然后就是假设你看到的俩段IP都是正常格式,那么你的真实IP获取是正常的。你只需要像上面说的写入/src/config.php即可

如果你发现有一行返回的IP是俩段,如:

标头HTTP_CF_CONNECTING_IP所获取到的IP:114.51.41.145
标头HTTP_X_FORWARDED_FOR所获取到的IP:114.51.41.145,114.51.41.145

那么此时你需要删除写入/src/config.php的
删除值:
扩展 折叠 复制
if (isset($_SERVER["HTTP_X_FORWARDED_FOR"])) { $_SERVER["REMOTE_ADDR"]= $_SERVER["HTTP_X_FORWARDED_FOR"]; }

同理,如果HTTP_CF_CONNECTING_IP这行返回俩个IP,则删除这行在/src/config.php对应的

删除值:
扩展 折叠 复制
if (isset($_SERVER['HTTP_CF_CONNECTING_IP'])) { $_SERVER['REMOTE_ADDR'] = $_SERVER['HTTP_CF_CONNECTING_IP']; }

此后,你的真实IP获取应该就正常了.
 
  • #3
XenForo 2.3请不要使用,目前发现启用后某些JS会出现问题导致插件无法正常进行安装流程。
 
后退
顶部 底部