oinume journal

Scratchpad of what I learned

GA4Kでクローラーのアクセスを除外するパッチ

Google Analyticsを携帯サイトで利用するためのGA4Kにバグ?と書きましたが、ちゃんと検索エンジンクローラーのアクセスを除外するようなパッチを書いてみました。マニュアルには「クローラからのアクセスを無視するための設定手順」というのがあるのですが、クローラーはUserAgentを携帯端末のように詐称してくるので、これが機能してないように思います。

 

diff -Naru selene_ga4k.orig/GoogleAnalytics/Config/analytics_config.php selene_ga4k/GoogleAnalytics/Config/analytics_config.php

--- selene_ga4k.orig/GoogleAnalytics/Config/analytics_config.php 2009-01-05 10:59:41.000000000 +0900

+++ selene_ga4k/GoogleAnalytics/Config/analytics_config.php 2009-02-07 22:02:41.000000000 +0900

@@ -29,7 +29,7 @@

define('USER_AGENT_PATTERN_SOFTBANK', '^SoftBank|^J-PHONE|^Vodafone|^MOT-');

define('USER_AGENT_PATTERN_AU', '^KDDI-|^UP.Browser');

define('USER_AGENT_PATTERN_WILLCOM', '^Mozilla/3.0*1{

+ return false;

+ }

+

$mobile_flg = false;

 

if(eregi(USER_AGENT_PATTERN_DOCOMO, $user_agent)){

 

 

とりあえずこのサイトで動かしているので、様子見て問題なさそうだったらバグレポートしようと思います。 バグレポートしました。

 

2009/2/17追記:http://eos.exbridge.jp/news/show/17 の1.1.1でこの問題は修正されているようです。

*1:?:DDIPOCKET|WILLCOM);');

-

+define('USER_AGENT_PATTERN_CRAWLER', 'Y!J-SRD|Y!J-MBS|Googlebot-Mobile');

 

//=================================================================================

//各種設定

diff -Naru selene_ga4k.orig/GoogleAnalytics/Service/analytics.php selene_ga4k/GoogleAnalytics/Service/analytics.php

--- selene_ga4k.orig/GoogleAnalytics/Service/analytics.php 2009-01-05 10:59:34.000000000 +0900

+++ selene_ga4k/GoogleAnalytics/Service/analytics.php 2009-02-07 22:01:38.000000000 +0900

@@ -81,7 +81,10 @@

* @return boolean

*/

function isMobile($user_agent){

-

+ if(eregi(USER_AGENT_PATTERN_CRAWLER, $user_agent