WHMCS使用cloudflare的CDN后获取用户登录真实ip

whmcs是一款出色的财务系统,cloudflare全球数一数二的CDN提供商,使用whmcs建立网站时,很多人为了防攻击都会套上一层cf(cloudflare)。

但是套上cf之后就会出现一个问题,每次不管是自己登录还是用户登陆注册,识别的ip都是cloudflare的ip,那么如何才能获取到登录用户的真实ip呢?答案其实很简单,只需要添加三行代码就可以完美解决。

添加代码:

在你自己建立的whmsc网站的根目录下找到configuration.php这个文件(改代码时请先备份原文件!)

在末尾直接添加如下代码,并保存(如果使用的是宝塔面板,可以直接在线编辑;其它情况可以使用ftp下载到本地,编辑完后再使用ftp上传进行替换文件即可)

$_SERVER['REMOTE_ADDR'] = $_SERVER['HTTP_X_FORWARDED_FOR']; // 获取真实IP
list($_SERVER['REMOTE_ADDR']) = explode(', ', $_SERVER['REMOTE_ADDR'], 2); // 可能通过多个代理,其中第一个为真实ip地址
$_SERVER['HTTP_X_FORWARDED_FOR'] = $_SERVER['REMOTE_ADDR']; // 添加到WHMCS IP变量

添加后就是如下图所示的11-13行(共三行)

whmcs使用cloudflare的CDN后获取用户登录真实ip 

此时就可以正常获取登录用户的真实IP辣

这篇文章有用吗?

点击星号为它评分!

平均评分 0 / 5. 投票数: 0

到目前为止还没有投票!成为第一位评论此文章。

发表评论