代码之家  ›  专栏  ›  技术社区  ›  ire_and_curses

如何让Mediawiki忽略来自Google搜索设备的页面视图?

  •  3
  • ire_and_curses  · 技术社区  · 15 年前

    每个页面上的页面视图计数器 MediaWiki 页面似乎是识别热门页面的一个很好的方法,这些页面值得花更多的精力来保持最新和有用,但我遇到了一个问题。

    我们使用 Google Search Appliance 为我们的Mediawiki安装编制索引。我的问题是GSA每次爬过页面时都会增加页面视图计数器。这完全支配了统计数据,淹没了真实用户的视图。

    我知道怎么做 reset the page counters 重新开始。但是有没有一种方法可以配置Mediawiki来忽略GSA的页面请求,以便计算页面视图?

    2 回复  |  直到 15 年前
        1
  •  3
  •   jspcal    15 年前

    这可以通过在article.php中添加一个条件来实现:

    includes/article.php:2861:函数viewupdates():

    if( !$wgDisableCounters && !$wgUser->isAllowed('bot') && $this->getID() ) {
    

    添加:

    && strpos($_SERVER['HTTP_USER_AGENT'], 'gsa-crawler') === false
    

    其中GSA爬虫是默认GSA UA的一部分…

    另一种方法是在GSA中设置表单身份验证,并让它作为bot组中的用户登录到wikimedia。

        2
  •  3
  •   grugnog    15 年前

    我们将此代码段添加到localsettings.php中,取得了巨大成功:

    if (strpos($_SERVER['HTTP_USER_AGENT'], 'gsa-crawler') !== FALSE) {
      $wgDisableCounters = TRUE;
    }
    

    谢谢!