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

每个问题的浏览数是根据什么标准决定的?为什么同一个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 人关注

相关问题

好像不可以返回
用户页面刷新一下会对数据库产生多少并发连接数?
请问本程序可以自定义模板吗?方便吗?未用过的表示不知情!
/articles/可以换成别的名字吗?
请问问题可以审核后再通过吗?
专题是否可以更灵活
可以不使用分类吗?没分类就发不成问题?
在IIS下中文搜索,中文主页,中文话题等不能用的可以暂时试试这个
metro风格下,用平板uc hd或者android自带的浏览器进入到问题详细页的时候,导航条消失
官方技术团队出个模板调用的教程 可以吗

推荐内容

别人的问题可以进行重新编辑,编辑后出现待确认,请问这个权限是管理员控制的吗?
再文章内容页(问题内容页)只调用当前话题下的内容(文章或问题)
这是css设置问题么?WIN7 和 win xp 系统效果怎么不一样呢?
请问一下文章部分可以有单独的分类吗?
寻二次开发技术攻城师!
手机验证码功能
wecenter是授权登陆还是?
FORMAT这个全局CLASS在哪?