Typecho 在用户评论,网站访问时都会记录其访问 ip 地址。
不过开启 cdn 之后,经常记录下来的就是 cdn 的代理 ip 了,后台评论也经常看见都是多个评论的 ip 都是同一个 ip,期初以为是别人刷的评论,
后来才发现是 cdn 的作用,差点就删除了这些评论了,那么如何解决 Typecho 使用 CDN 后不显示访客真实 IP 地址呢?
这里我们只需要一段很简单小巧的代码即可搞定完事。
这里我就直接附上相关代码,代码添加至 Typecho 根目录下 config.inc.php 文件中的最上面:
//** 防止CDN造成无法获取客户真实IP地址 */
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');
版权声明:本文为原创文章,版权归 啊友 所有,转载请注明出处!
本文链接:https://www.geeh.cn/7.html
友情提示:如果博客出现404或链接失效,请留言或者联系博主修复!