查看: 2075|回复: 0

Discuz! X3.5 针对常见CDN/WAF/负载均衡,如何获取真实IP?

[复制链接]

1240

主题

293

回帖

1240

积分

管理员

贡献
97409
金币
8938

马山东

发表于 2024-12-24 21:25 | 显示全部楼层 |阅读模式

马上注册,结交更多好友

您需要 登录 才可以下载或查看,没有账号?立即注册

×
修改Discuz不是获取真实IP的最佳方法
如果您有能力,建议了解Apache mod_remoteip、Nginx ngx_http_realip_module 或其他同类功能
在服务器端配置可以让你的服务器访问日志也能收集到正确的IP

参照此教程修改之前,请务必确认X3.5当前是否能够获取到真实的IP地址
如果已经能获取到真实IP地址的情况下,切勿参照此教程修改!
首先打开 config/config_global.php 这个文件,找到这样一行:
  1. $_config['security']['onlyremoteaddr'] = 1;
复制代码
改成
  1. $_config['security']['onlyremoteaddr'] = 0;
复制代码

然后到大约最下面的位置,找到这样一段:
  1. // -------------------------  CONFIG IPGETTER  -------------------------- //
  2. $_config['ipgetter']['setting'] = '';
  3. $_config['ipgetter']['header']['header'] = 'HTTP_X_FORWARDED_FOR';
复制代码
将其中的
  1. $_config['ipgetter']['setting'] = '';
复制代码
改为
  1. $_config['ipgetter']['setting'] = 'header';
复制代码
(如果已经是header了就不用改了)
对于许多CDN来说,做到这一步就已经能获取到真实IP了,可以试一下。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

在本版发帖返回顶部