WordPress在使用CDN加速等情况下获取真实IP地址

发布时间:

最近使用了“中小网站安全防护”,然而功能卵并然,并没起到什么很好的防护作用。倒是IP地址一直显示杭州阿里云BGP数据中心,全国各地网友都出自阿里云了,不能看到真实的数据来访情况。 WordPress在使用CDN加速等情况下获取真实IP地址 想放弃这个安全防护功能,但是考虑到我这小白还不会添加其他的防护功能,就一直使用下来了。今天偶逛【闲鱼】博客,突然发现了有这么篇文章,跟我遇见的问题一模一样,果断用【闲鱼】博主的方法试用了下,效果不错。特分享给广大群友~~

WordPress在使用CDN加速等情况下获取真实IP地址

闲鱼在评论处有添加显示评论者IP的功能,细心的朋友一定发现IP一直都是错的,就一个摆设玩意儿,这不是闲鱼想要的。一开始以为是因为闲鱼使用的本地方法获取的IP更新不及时的缘故,但是换成在线获取还是不行,换了代码还是不行,为什么IP就不对呢?为什么同样的代码就闲鱼不成功了?

今天闲鱼突然想到是不是使用了百度云的原因?评论者的IP基本和百度云给出的节点一致,好多东莞的,就算东莞人多也不可能来闲鱼博客的都是东莞的吧,本博客又没什么福利! WordPress在使用CDN加速等情况下获取真实IP地址 好吧,既然有想法就试试,撤掉百度云一看还真对了!原来一切出在百度云加速上,怪闲鱼太嫩了,脑子笨。
好了,前因后果说完,但是就算是百度云作祟,闲鱼又不想放弃百度云,也想IP正确,怎么办?这里就要说说在使用百度云情况下如何获取真实IP了。

解决方法

打开你的Wordpress根目录下的wp-config.php文件,然后在最顶部< ? 之后添加下列代码,保存

  1. if(isset($_SERVER['HTTP_X_FORWARDED_FOR'])) {
  2.   $list = explode(',',$_SERVER['HTTP_X_FORWARDED_FOR']);
  3.   $_SERVER['REMOTE_ADDR'] = $list[0];
  4. }

这样,在使用百度云情况下就能获取到真实IP了,同样适用于使用其他CDN时获取真实IP。 WordPress在使用CDN加速等情况下获取真实IP地址