长期以来总是疏忽了评论用户真实IP地址的问题,直到今天碰到了垃圾机器评论,想直接通过IP屏蔽的是后才发现其显示的IP竟然是 CDN 节点的IP地址,这时才想起来因为升级更新到了 Typecho 开发版【本博客正式升级到 Typecho 开发版 1.1 (17.4.24)】,没有加入评论用户真实IP地址获取的代码,囧呀!!!
关于这个获取 CDN 后真实评论用户IP地址的代码在 Typecho 和 WordPress 上都是通用的,分别放到 Typecho 的config.inc.php 和 WordPress 的 wp-config.php 里即可。如下代码:
//防止 CDN 造成无法获取客户真实IP地址
if(isset($_SERVER['HTTP_X_FORWARDED_FOR']))
{
$list = explode(',',$_SERVER['HTTP_X_FORWARDED_FOR']);
$_SERVER['REMOTE_ADDR'] = $list[0];
}
你还别说这个“真实IP”有的时候还是很重要的,特别是应对垃圾评论机器人的时候还是很有用的。
10 条评论
这个直接放在wp-config.php就可以了嘛?
嗯, WordPress 的话直接发到wp-config.php里就可以了!你可以通过查看评论显示的IP来判断是否生效!
不错,过来看看,真是IP有时候还是很有用处的!
确实,垃圾评论机器人的IP基本都是固定的,所以只要屏蔽掉IP就基本上干掉了!
这个方面真的很少关注到,评论者IP很少关注,屏蔽垃圾我都是通过昵称、邮箱、网址、关键词来
有时候IP还是很直接有效的!
已经用上,确实能够获取到真实的IP
不得不承认Nginx真心很强大呀!
ZBLOG的怎么办
这个不清楚了,没有用过ZBlog呀!