该问题已被锁定!
5
关注
1750
浏览

每个问题的浏览数是根据什么标准决定的?为什么同一个ip可以产生多次浏览数?

AI智能回复搜索中,请稍后...

为什么被折叠? 0 个回复被折叠
kenw2004 高级会员 用户来自于: 四川省成都市
2016-12-14 16:58
修改方法: 修改文件 model/question.php 中的   把 function update_views($question_id){}函数 替换为:
    public function update_views($question_id) {
        //不统计蜘蛛的记录
        if (empty($_SERVER['HTTP_USER_AGENT']) OR preg_match("/(Bot|Crawl|Spider|slurp|sohu-search|lycos|curl|robozilla)/i", $_SERVER['HTTP_USER_AGENT'])) {
            return false;
        }
        $views_session = fetch_ip();
        $views_session = !empty($views_session) ? $views_session : session_id();
        if (AWS_APP::cache()->get('update_views_question_' . md5($views_session) . '_' . intval($question_id))) {
            return false;
        }

        AWS_APP::cache()->set('update_views_question_' . md5($views_session) . '_' . intval($question_id), time(), get_setting('cache_level_normal'));

        $this->shutdown_query("UPDATE " . $this->get_table('question') . " SET view_count = view_count + 1 WHERE question_id = " . intval($question_id));

        return true;
    }
新的计数逻辑为:先按ip判断浏览次数,如果未获取到ip,则按 session_id 判断 如果你要以 24小时为一个周期,将  get_setting('cache_level_normal') 改为 86400 即可

关于作者

问题动态

发布时间
2016-12-13 18:37
更新时间
2017-04-12 11:38
关注人数
5 人关注

相关问题

没有认证的订阅号可以吗?
【分享】允许游客浏览所有回复的修改方法
请问什么时候能购买版权啊?可不可以预定?大概会是多少钱?怎么分类?
IE7浏览本站变形
如果我提供1000m的独享带宽服务器给10个人用,你们每个人愿意多少钱购买?
微信(6.3.10)内置浏览器无法上传图片
WC的活动(众筹)可以用微支付接口吗?
浏览器兼容问题,应该好好研究
发现个百度的 手机APP 应用 可以把普通站变手机站
Google浏览器无法显示“”上传附件“”这个按钮,求解决

推荐内容

趣查有趣吗?
请教官方一个PHP的问题。
问一个很重要的全局变量问题
有喜欢看美剧、影视的嘛?这是我用wecenter 改的网站
去掉了ZEND框架,轻了很多。效率要高一点 数据库只支持MYSQLI
活动模板升级到3.0版本了,欢迎大家测试
怎么让页面里只显示文章不显示问题
怎么去掉文章显示在发现页的文字预览?
BUG,文章赞同没有添加到动态里面