为wordpress新增ip和port日志

应网安要求,需要对用户日志进行扩增,对用户日志新增端口和port记录

操作

找到页面文件目录,在wp-includes/funcitons.php中追加如下字段

//IP 端口 获取与存储
add_action('wp_insert_comment','wp_insert_ipport',10,2);
function wp_insert_ipport($comment_ID,$commmentdata) {
    $ipaddr = $_SERVER['REMOTE_ADDR'];
    $ipport = $_SERVER['REMOTE_PORT'];
    //ipport 是存储在数据库里的字段名字,取出数据的就会用到
    update_comment_meta($comment_ID,'_ipport',$ipport);
    update_comment_meta($comment_ID,'_ipaddr',$ipaddr);
}

//评论页展示
add_filter( 'manage_edit-comments_columns', 'my_comments_columns' );
add_action( 'manage_comments_custom_column', 'output_my_comments_columns', 10, 2 );
function my_comments_columns( $columns ){
    $columns[ '_ipport' ] = __( 'IP Port' );
    $columns[ '_ipaddr' ] = __( 'IP Addr' );
    return $columns;
}

function output_my_comments_columns( $column_name, $comment_id ){
    switch( $column_name ) {
        case "_ipport" :
        echo get_comment_meta( $comment_id, '_ipport', true );
        break;
        case "_ipaddr" :
        echo get_comment_meta( $comment_id, '_ipaddr', true );
        break;
    }
}

大功告成

file

也可以追加如下字段

$_SERVER["HTTP_X_FORWARDED_FOR"] //通过代理服务器取得客户端的真实 IP 地址;
$_SERVER["HTTP_CLIENT_IP"] //获取客户端,及浏览器所在的电脑的 ip 地址
$_SERVER['HTTP_ACCEPT_LANGUAGE']//浏览器语言
$_SERVER['REMOTE_ADDR'] //当前用户 IP 。
$_SERVER['REMOTE_HOST'] //当前用户主机名
$_SERVER['REQUEST_URI'] //URL
$_SERVER['REMOTE_PORT'] //端口。
$_SERVER['SERVER_NAME'] //服务器主机的名称。
$_SERVER['PHP_SELF']//正在执行脚本的文件名
$_SERVER['argv'] //传递给该脚本的参数。
$_SERVER['argc'] //传递给程序的命令行参数的个数。
$_SERVER['GATEWAY_INTERFACE']//CGI 规范的版本。
$_SERVER['SERVER_SOFTWARE'] //服务器标识的字串
$_SERVER['SERVER_PROTOCOL'] //请求页面时通信协议的名称和版本
$_SERVER['REQUEST_METHOD']//访问页面时的请求方法
$_SERVER['QUERY_STRING'] //查询(query)的字符串。
$_SERVER['DOCUMENT_ROOT'] //当前运行脚本所在的文档根目录
$_SERVER['HTTP_ACCEPT'] //当前请求的 Accept: 头部的内容。
$_SERVER['HTTP_ACCEPT_CHARSET'] //当前请求的 Accept-Charset: 头部的内容。
$_SERVER['HTTP_ACCEPT_ENCODING'] //当前请求的 Accept-Encoding: 头部的内容
$_SERVER['HTTP_CONNECTION'] //当前请求的 Connection: 头部的内容。例如:“Keep-Alive”。
$_SERVER['HTTP_HOST'] //当前请求的 Host: 头部的内容。
$_SERVER['HTTP_REFERER'] //链接到当前页面的前一页面的 URL 地址。
$_SERVER['HTTP_USER_AGENT'] //当前请求的 User_Agent: 头部的内容。
$_SERVER['HTTPS']//如果通过https访问,则被设为一个非空的值(on),否则返回off
$_SERVER['SCRIPT_FILENAME'] #当前执行脚本的绝对路径名。
$_SERVER['SERVER_ADMIN'] #管理员信息
$_SERVER['SERVER_PORT'] #服务器所使用的端口
$_SERVER['SERVER_SIGNATURE'] #包含服务器版本和虚拟主机名的字符串。
$_SERVER['PATH_TRANSLATED'] #当前脚本所在文件系统(不是文档根目录)的基本路径。
$_SERVER['SCRIPT_NAME'] #包含当前脚本的路径。这在页面需要指向自己时非常有用。
$_SERVER['PHP_AUTH_USER'] #当 PHP 运行在 Apache 模块方式下,并且正在使用 HTTP 认证功能,这个变量便是用户输入的用户名。
$_SERVER['PHP_AUTH_PW'] #当 PHP 运行在 Apache 模块方式下,并且正在使用 HTTP 认证功能,这个变量便是用户输入的密码。
$_SERVER['AUTH_TYPE'] #当 PHP 运行在 Apache 模块方式下,并且正在使用 HTTP 认证功能,这个变量便是认证的类型

本文来自签署作者独家发布,站点有权对文章执行产权保护,严禁转载!

(0)
AuroraAurora站点维系者
上一篇 2023年 2月 26日 下午2:33
下一篇 2023年 2月 26日 下午9:16

相关推荐

  • curl 命令详解

    curl 是一种命令行工具,作用是发出网络请求,然后获取数据,显示在”标准输出”(stdout)上面。它支持多种协议,下面列举其常用功能。 文章目录一、查看…

    技术分享 2023年 4月 7日
  • Linux 双机热备

    文章目录Rsync概述什么是Rsyncrsync特性传输方式rsync拉复制实战Rsync推复制 Rsync概述 什么是Rsync rsync是一款开源,快速,多功能的可实现增量的…

    2023年 6月 7日
  • 树莓派安装ansible教程(二)

    ansible是一款方便大家对集群计算机进行管理的软件,此软件通过对master节点的设置,通过配置对slave节点的免密服务,完成部署后,即可在master操作一条指令,同时对多…

    2021年 9月 14日
  • Linux 定时执行shell 脚本

    crontab 可以在指定的时间执行一个shell脚本以及执行一系列 Linux 命令。 文章目录定时执行shellcrontab命令详解常用命令基本格式示例错误捕获 定时执行sh…

    技术分享 2023年 12月 5日
  • 【Centos自动校准时间】centos时间校准

    Centos自动校准时间 1.重写clock文件 vim /etc/sysconfig/clock 2.clock文件添加一下内容 ZONE="Asia/Shanghai…

    技术分享 2023年 6月 29日
  • 解决Docker镜像仓库不受信任的问题

    文章目录http:server gave HTTP response to HTTPS client常用解决方式非常用解决方式2场景的解决方式docker场景container场景…

    2021年 11月 17日
  • Docker 存储目录的平滑迁移

    文章目录docker 目录的迁移迁移准备常用运维指令迁移停止docker服务创建新的目录或磁盘目录相关指令磁盘相关指令删除磁盘分区格式化硬盘建立挂载目录挂载硬盘卸载磁盘从旧目录迁移…

    2021年 11月 4日
  • 通过PAC文件配置自动代理

    文章目录代理自动配置文件(PAC)文件语法参数描述预定义的函数与环境示例1 对关键域名进行代理示例2 对除本地主机以外的所有连接使用代理示例3 和例2一样,但是对防火墙外的本地服务…

    2023年 2月 26日
  • scp拷贝文件及文件夹

    以前一直是在服务器上tar打包压缩,下载到本地电脑上,再上传到另外一台服务器上,再解压。 其实使用scp就可以直接对拷文件或者文件夹了。 scp就是secure copy,是用来进…

    技术分享 2023年 10月 25日
  • Python进行websocket接口测试

    我们在做接口测试时,除了常见的http接口,还有一种比较多见,就是socket接口,今天讲解下怎么用Python进行websocket接口测试。 现在大多数用的都是websocke…

    技术分享 2023年 3月 2日

发表回复

登录后才能评论
Translate »