検索クローラーは、モバイルサイトを観に来る際は、一応携帯を装ってやってくる。
しかしやっぱり携帯ではないので、問題点もある。
対応方法について記載しておく。
端末情報対応
USER AGENT(以下UA)を変更してきてくれるけど、端末識別情報は持ってこない。
クローラーアクセス時のUA一覧はコチラ
例えばdocomo携帯サイトの場合『uid=NULLGWDOCOMO』で端末情報を取得を前提としていたりするので、『端末識別情報の取得が出来ない』とはじいてしまうような結果になってしまう…
そうならないような対策
// 検索エンジンクローラUA define('CRAWLER',"moba-crawler|Googlebot-Mobile|mobile goo|Y!J-SRD/1.0|Y!J-MBS/1.0|symphonybot1.froute.jp"); function isCrawler() { if(ereg(CRAWLER, getenv("HTTP_USER_AGENT"))){ return true; }else{ false; } } // クローラー対策 if (isCrawler()){ //moba-crawler DoCoMoユーザエージェント対応 //Net_UserAgent_Mobileエラー回避 $_SERVER['HTTP_X_DCMGUID'] = 'Crawler_uid_i'; $_SERVER['HTTP_X_JPHONE_UID'] = 'Crawler_uid_sb'; $_SERVER['HTTP_X_UP_SUBNO'] = 'Crawler_uid_ez'; $CaType = Client::getCaForCrawler(); }
確認・テストは、ブラウザのUAを書き変えて、うまいこといけばOK。
アクセスIP対応
.htaccessでIPで携帯の許可指定してるなら、以下を追加する。
Googleモバイル(Googlebot-Mobile)
72.14.199.0/25 (72.14.199.0 - 72.14.199.127)
209.85.238.0/25 (209.85.238.0 - 209.85.238.127)
#Google Mobile allow from 72.14.199.0/25 allow from 209.85.238.0/25
Yahooモバイル(Y!J-SRD/1.0・Y!J-MBS/1.0)
124.83.159.146 ~ 124.83.159.185
124.83.159.224 ~ 124.83.159.247
#Yahoo Mobile allow from 124.83.159.
コメント