Typecho 在用户评论,网站访问时都会记录其访问 ip 地址。
不过开启 cdn 之后,经常记录下来的就是 cdn 的代理 ip 了,后台评论也经常看见都是多个评论的 ip 都是同一个 ip,期初以为是别人刷的评论,
后来才发现是 cdn 的作用,差点就删除了这些评论了,那么如何解决 Typecho 使用 CDN 后不显示访客真实 IP 地址呢?
这里我们只需要一段很简单小巧的代码即可搞定完事。
这里我就直接附上相关代码,代码添加至 Typecho 根目录下 config.inc.php 文件中的最上面:
if(isset($_SERVER['HTTP_X_FORWARDED_FOR'])) { $list = explode(',',$_SERVER['HTTP_X_FORWARDED_FOR']); $_SERVER['REMOTE_ADDR'] = $list[0]; }
使用之后,你的 Typecho 站点的评论就会直接显示用户的真实地址了,而不是 cdn 的代理地址。
方法二:
在 config.inc.php 里加上一行:
define('__TYPECHO_IP_SOURCE__','HTTP_X_FORWARDED_FOR');
如果是用 HTTP_CLIENT_IP 获取地址的话就是
define('__TYPECHO_IP_SOURCE__','HTTP_CLIENT_IP');
未经允许不得转载:搬瓦工VPS_美国VPS » Typecho博客使用CDN后评论如何才能显示访客真实IP地址