设为首页收藏本站

 找回密码
 注册论坛

QQ登录

只需一步,快速开始

用百度帐号登录

只需两步,快速登录

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 1213|回复: 1

discuz x3.1 20150609更新后,CDN下获取用户真实IP的方法

[复制链接]

签到天数: 2364 天

[LV.Master]伴坛终老

 成长值: 21560
发表于 2015/7/27 03:14 | 显示全部楼层 |阅读模式 |Google Chrome 44.0.2403.107|Windows 8.1
天涯海角搜一下: 百度 谷歌 360 搜狗 有道 雅虎 必应 即刻
找到这个文件:\source\class\discuz\discuz_application.php

搜索,在378行左右
  1. private function _get_client_ip() {
  2.                 $ip = $_SERVER['REMOTE_ADDR'];
  3.                 if (isset($_SERVER['HTTP_CLIENT_IP']) && preg_match('/^([0-9]{1,3}\.){3}[0-9]{1,3}$/', $_SERVER['HTTP_CLIENT_IP'])) {
  4.                         $ip = $_SERVER['HTTP_CLIENT_IP'];
  5.                 } elseif(isset($_SERVER['HTTP_X_FORWARDED_FOR']) AND preg_match_all('#\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}#s', $_SERVER['HTTP_X_FORWARDED_FOR'], $matches)) {
  6.                         foreach ($matches[0] AS $xip) {
  7.                                 if (!preg_match('#^(10|172\.16|192\.168)\.#', $xip)) {
  8.                                         $ip = $xip;
  9.                                         break;
  10.                                 }
  11.                         }
  12.                 }
  13.                 return $ip;
  14.         }
复制代码


这一段替换

  1. private function _get_client_ip() {
  2. $ip = $_SERVER['REMOTE_ADDR'];
  3. if (isset($_SERVER['HTTP_X_FORWARDED_FOR']) AND preg_match_all('#\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}#s', $_SERVER['HTTP_X_FORWARDED_FOR'], $matches)) {
  4. foreach ($matches[0] AS $xip) {
  5. if (!preg_match('#^(10|172\.16|192\.168)\.#', $xip)) {
  6. $ip = $xip;
  7. break;
  8. }
  9. }
  10. } elseif(isset($_SERVER['HTTP_CLIENT_IP']) && preg_match('/^([0-9]{1,3}\.){3}[0-9]{1,3}$/', $_SERVER['HTTP_CLIENT_IP'])) {
  11. $ip = $_SERVER['HTTP_CLIENT_IP'];
  12. }
  13. return $ip;
  14. }
复制代码


如果不经过cdn的话 用户容易伪造ip 所以不用cdn就别这么改
1.png

2.png

比如说伪造8.8.8.8访问
QQ图片20150727045051.png

[发帖际遇]: 小樱 乐于助人,奖励 8 贡献. 幸运榜 / 衰神榜
欢迎光临IT技术交流论坛:http://bbs.itzmx.com/
回复

使用道具 举报

慢性腐蚀心灵 该用户已被删除
发表于 2015/7/27 03:15 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
欢迎光临IT技术交流论坛:http://bbs.itzmx.com/
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册论坛 用百度帐号登录新浪微博账号登陆

本版积分规则

手机版|Archiver|Mail me|网站地图|IT技术交流论坛 ( 闽ICP备13013206号-7 )

GMT+8, 2018/6/24 03:45 , Processed in 0.328311 second(s), 49 queries , Gzip On, Memcache On.

Powered by itzmx!

© 2011-2018 sakura

快速回复 返回顶部 返回列表