検索クローラーは、モバイルサイトを観に来る際は、一応携帯を装ってやってくる。
しかしやっぱり携帯ではないので、問題点もある。
対応方法について記載しておく。
端末情報対応
USER AGENT(以下UA)を変更してきてくれるけど、端末識別情報は持ってこない。
クローラーアクセス時のUA一覧はコチラ
例えばdocomo携帯サイトの場合『uid=NULLGWDOCOMO』で端末情報を取得を前提としていたりするので、『端末識別情報の取得が出来ない』とはじいてしまうような結果になってしまう…
そうならないような対策
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | // 検索エンジンクローラ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)
1 2 3 | #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
1 2 | #Yahoo Mobile allow from 124.83.159. |
コメント