为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

相关推荐

  • scp拷贝文件及文件夹

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

    技术分享 2023年 10月 25日
  • 4. FRP概念

    文章目录通过 SSH 访问内网机器通过自定义域名访问内网的 Web 服务转发 DNS 查询请求转发 Unix 域套接字对外提供简单的文件访问服务为本地 HTTP 服务启用 HTTP…

    2023年 3月 2日
  • 生成CA证书

    生成服务器CA证书 在配置HTTPS监听时,您可以使用自签名的CA证书,并且使用该CA证书为客户端证书签名。 执行以下命令,在/home目录下新建一个ca文件夹,并在ca文件夹下创…

    2023年 5月 9日
  • 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日
  • 通过PAC文件配置自动代理

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

    2023年 2月 26日
  • curl 命令详解

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

    技术分享 2023年 4月 7日
  • 2.FRP安装

    文章目录安装系统需求下载部署开始使用!使用 systemd 安装 关于如何安装 frp 的说明。 frp 采用 Golang 编写,支持跨平台,仅需下载对应平台的二进制文件即可执行…

    2023年 3月 2日
  • pyinstaller打包完很大怎么办?

    Python打包软件有很多,作者这边用的最多的就是以下的这几个 工具名称 windows linux 单文件模式 bbfreeze yes yes py2exe yes yes p…

    2021年 8月 28日
  • 树莓派安装ansible教程(二)

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

    2021年 9月 14日

发表回复

登录后才能评论
Translate »