wordpress评论显示内网地址ip 修改方法

一、启用了Wordpress缓存插件。 这个不用管
二、PHP版本或者Wordpress版本的问题。这个我觉得忽略。直接改代码
我一看,php版本的问题应该不存在,因为wordpress安装环境是有要求的,如果php有问题那么应该安装wordpress的时候就出问题。wordpress版本也没问题,我用的是最新的版本而且这个版本之前是可以正确显示IP地址的。最后就是缓存插件的可能性了,因为我不久前就启用了这个插件,也几乎同时在启用这个插件之后评论IP地址就显示为内网ip127.0.0.1or其他地址了。
解决办法
解决办法也挺简单的, 我们只需要修改wordpress主目录下/wp-includes/目录里面的comment.php文件里面的一行代码就可以。首先打开comment.php文件后在里面搜索:commentdata[commentauthorIP]1351/wpincludes/comment.phpcommentdata['comment_author_IP'] = preg_replace( '/[^0-9a-fA-F:., ]/', '',SERVER[REMOTEADDR]);commentdata['comment_author_IP'] = preg_replace( '/[^0-9a-fA-F:., ]/', '',_SERVER['HTTP_X_FORWARDED_FOR'] ); 也就是将_SERVER['REMOTE_ADDR']替换为$_SERVER['HTTP_X_FORWARDED_FOR']就可以了。我在修改完后进行了测试,评论IP地址可以正常显示了。

4 条评论

  1. 其实不太想把这功能加进自己博客,包括user-agent,不过也不反对其他博主这么做,丰富功能也是不错的。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注