Typecho/WordPress使用CDN后无法获取真实访问者IP(所有IP均为CDN服务器地址)的解决办法
- 问题表现
最近,博主折腾了一下CDN,也是因为现在的服务器感觉有点慢了,就想着那另外一台服务器自建了CDN(说得挺高大上,其实就是Nginx反代) ,但是出现了一些问题:后台以及各种统计工具中,所记录的访问者IP都是同一个?就是那台CDN服务器的IP。
好吧,其实是忘记修改了,这篇文章就是做个记录,同时也为那些新手遇到同样的问题,好尽快解决。
- 解决办法
其实nginx反代一直都有这个问题,这次折腾就忘记做修改了。解决办法很简单,只需要修改下程序加入以下代码即可。 无论是Typecho还是WordPress,都是通用的,需要修改配置文件。Typecho是config.inc.php,WordPress是wp-config.php,修改加入代码:
if (isset($_SERVER['HTTP_X_REAL_IP'])) {$_SERVER['REMOTE_ADDR'] = $_SERVER['HTTP_X_REAL_IP'];}
如图,就是Typecho的修改方法,其他程序基本差不多的:
- 最后啰嗦
最后再啰嗦一下
数据操作有风险,请注意提前备份。记录下来,希望能帮到别人吧。
至于,自建CDN,以后有空再写写相关的教程吧。 现在大厂也都提供了比较稳定的CDN服务了,基本网站也就够用了。如果不是喜欢折腾,就没必要了。