首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >z-blog网站cdn加速后获取用户真实IP地址的方法

z-blog网站cdn加速后获取用户真实IP地址的方法

作者头像
雾海梦曦
发布2022-11-14 16:20:53
发布2022-11-14 16:20:53
2.6K0
举报
文章被收录于专栏:博客屋博客屋

前几天发过一篇关于PHP获取网站使用cdn后的用户真实的IP地址的方法,然后就有群里的小伙件单独来问,如果使用z-blog建站并使用cdn加速的话是如何获取用户的真实IP地址呢?那么今天就交大家一个简单的方法。

z-blog cdn加速后获取用户真实IP地址的方法

z-blog需要获取用户IP地址的地方大概有两处,一个后台建立新用户时需要获取当前管理的IP地址,另一个是访客在前台提前评论时,需要获取访客的IP地址。

打开 zb_system/function/c_system_event.php

找到如果下图两处,分别是提交用户资料时获取用户IP地址以及提交评论时获取IP地址的代码

提交用户资料获取IP地址

提交评论获取IP地址

可以比较一下,上面两张图所要获取IP地址方式都是调用的同一个函数 GetGuestIP() ,我们只需要在z-blog中改动这个函数的代码就可以获取z-blog在cdn加速的情况下用户真实的IP地址了。

打开 zb_system/function/c_system_common.php  要用代码编辑器打开,推荐 notepad++

查找代码:

代码语言:javascript
复制
function GetGuestIP(){
    return GetVars("REMOTE_ADDR", "SERVER");}

替换代码

代码语言:javascript
复制
function GetGuestIP(){
   if(isset($_SERVER['HTTP_X_FORWARDED_FOR'])){
        $arr = explode(',',$_SERVER['HTTP_X_FORWARDED_FOR']);
        return $arr[0];
    }else{
        return $_SERVER['REMOTE_ADDR'];
    }}

替换后的代码,如下图所示

小编用话说:

1、z-blog默认后台是无法显示评论的IP地址的,你可以使用一些相关的评论插件来查看评论的IP地址

2、z-blog默认后台的用户管理也无法查看用户的注册地址,你也可以使用用户中心一类的插件来查看

3、如果你不想修改代码,可以下载插件来实现此功能。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-12-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档