WordPress评论IP地址显示为127.0.0.1的解决办法

WordPress评论IP地址显示为127.0.0.1的解决办法,第1张

概述上次在更换了服务器之后不知为何所有新评论的IP地址显示为127.0.0.1。刚开始我还没在意,觉得这也没什么。可是最近越发的觉得有必要解决这个问题。今天算式解决了,不过由于涉及到Wordpress程序文件的修改,所以就写篇日记以防日后升级程序后再次遇到这个问题。问题原因于是搜索了下,了解到导致…

上次在更换了服务器之后不知为何所有新评论的IP地址都显示为127.0.0.1。刚开始我还没在意,觉得这也没什么。可是最近越发的觉得有必要解决这个问题。今天算式解决了,不过由于涉及到WordPress程序文件的修改,所以就写篇日记以防日后升级程序后再次遇到这个问题。

问题原因

于是搜索了下,了解到导致这种情况的大概原因是:

一、启用了wordpress缓存插件。

二、PHP版本或者WordPress版本的问题。

我一看,PHP版本的问题应该不存在,因为wordpress安装环境是有要求的,如果PHP有问题那么应该安装WordPress的时候就出问题。WordPress版本也没问题,我用的是最新的版本而且这个版本之前是可以正确显示IP地址的。最后就是缓存插件的可能性了,因为我不久前就启用了这个插件,也几乎同时在启用这个插件之后@R_403_5543@就显示为127.0.0.1了。

解决方法

解决办法也挺简单的,我们只需要修改wordpress主目录下/wp-includes/目录里面的comment.PHP文件里面的一行代码就可以。首先打开comment.PHP文件后在里面搜索:$commentdata['comment_author_IP']然后更具下面的提示对应修改(大约在1351行):

在/wp-includes/comment.PHP文件里找到下列代码:
$commentdata['comment_author_IP'] = preg_replace( '/[^0-9a-fA-F:.,]/','',$_SERVER['REMOTE_ADDR'] );
将其修改为下列代码(可直接复制替换)
$commentdata['comment_author_IP'] = preg_replace( '/[^0-9a-fA-F:.,$_SERVER['http_X_FORWARDED_FOR'] );

也就是将$_SERVER['REMOTE_ADDR']替换为$_SERVER['http_X_FORWARDED_FOR']就可以了。我在修改完后进行了测试,@R_403_5543@可以正常显示了。

总结

以上是内存溢出为你收集整理的WordPress评论IP地址显示为127.0.0.1的解决办法全部内容,希望文章能够帮你解决WordPress评论IP地址显示为127.0.0.1的解决办法所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/1004379.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-22
下一篇 2022-05-22

发表评论

登录后才能评论

评论列表(0条)

保存