user agent htaccessで携帯の検索ロボットが訪問してきた場合

このQ&Aのポイント
  • .htaccessで携帯の検索ロボットが訪問した際の振り分け方法
  • パソコンの場合は.htaccessがある階層のindex.phpへ、携帯の場合は各キャリアのURLにジャンプ
  • Yahoo!モバイルとgoogleモバイルのロボットは各キャリアのURLにジャンプさせる必要があるか
回答を見る
  • ベストアンサー

user agent htaccessで携帯の検索ロボットが訪問してきた場合

いつもお世話になっております。 .htaccessでパソコンや携帯からアクセスがあった場合 振り分けをするよう作成しています。 パソコンの場合又は、PC検索ロボットの場合、URLにジャンプすることなく.htaccessがある階層のindex.phpへ 携帯の場合はそれぞれのURLにジャンプ docomo → /mobile/docomo/ au → /mobile/au/ softbank → /mobile/softbank/ そこで分からない事があったのですが Yahoo!モバイルとgoogleモバイルのロボットが 訪問して来た場合、どこのURLへジャンプさせればいいのでしょうか。 3キャリア全てのURLにジャンプさせる必要があるのでしょうか。 よろしくお願いいたします。

  • HTML
  • 回答数1
  • ありがとう数0

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

302でリダイレクトしてる感じですか? htaccessでやるのならば、aliasやmod_rewriteの方が良いかと思います。 ジャンプ?先はどこでも良いかと思いますが、302リダイレクトするのであれば 一番訪問者が多いキャリアになるかも知れませんね。

関連するQ&A

  • htaccessでPCと携帯の振り分け(難あり)

    パソコンと携帯の振り分けは、htaccessでエージェントにより振り分けが一般的だと思います。 「RewriteEngine on」で振り分けの場合について。 http://www.hogehoge.com/ http://www.hogehoge.com/mobile/ トップディレクトリにhtaccessを設置した場合、携帯サイトが入っている「mobile」ディレクトリには、「RewriteEngine Off」を記述したhtaccessを設置する必要があります。 普通であれば、これで問題なくパソコンと携帯を振り分ける事ができるのですが、携帯サイトが入っている「mobile」ディレクトリには、動的アドレスを静的に変更するために、htaccessに「RewriteEngine on」が記述されています。 よって、パソコンと携帯の振り分けを無効にするために「RewriteEngine Off」をしなければならないのに、動的アドレスを静的にアドレスにするために、「RewriteEngine on」も記述しなければなりません。 パソコンと携帯の振り分けと、動的を静的にする変換を行うような良い記述方法はあるでしょうか? ちなみに、パソコントップページはすでに検索エンジンに登録されているため、振り分け用のindex.cgiなどは使用したくないと思っています。 アドバイスをお願い致します。

    • ベストアンサー
    • HTML
  • .htaccessの書き方-PCページと携帯ページの振り分け

    .htaccessの書き方-PCページと携帯ページの振り分け 色々と探してみましたが、目的の情報にたどり着けなかったので、質問させて頂きます。 携帯サイトのURLが www.abc.com/ として、 PCページを www.abc.com/pc/としました。 .htaccessで振り分けるにはどのような記述が必要なんでしょうか? 完全な素人なので、全文を教えて頂けると助かります。 ブラウザで振り分ける場合、IE、firefox、safari程度ブラウザをPC用へ振り分けでOKです。 ※注:探してみたところ、/mobile/などに振り分ける方法は多数書かれていました。ここでは、パソコンからの閲覧ページを下位階層に設置したケースでの回答を頂きたいです。

  • .htaccessによる携帯のアクセス振分けについて

    .htaccessによる携帯のアクセス振分けについて .htaccess で携帯とパソコンの振分けを行ったのですが http://*******.com/ を携帯からアクセスした場合はちゃんと携帯サイトへ振り分けられますが http://*******.com/index.html と ドメインの後ろにファイル名が入ったURLに アクセスすると振分けが行われずパソコンのサイトを表示してしまいます 参考サイトには 「「.htaccess」ファイルは設置したディレクトリ以下全てに影響します。」 と書いてあります 参考サイト: http://www.w3lab.jp/htac/keitai.html どのファイルやディレクトリにアクセスをしても 携帯サイトに振り分けられるようにしたいのですが どのようにしたらいいでしょうか? よろしくお願いいたします .htaccess には下記の通り記述してあります ------------------------------------------------------------ RewriteEngine On RewriteCond %{HTTP_USER_AGENT} DoCoMo [OR] RewriteCond %{HTTP_USER_AGENT} J-PHONE [OR] RewriteCond %{HTTP_USER_AGENT} Vodafone [OR] RewriteCond %{HTTP_USER_AGENT} SoftBank [OR] RewriteCond %{HTTP_USER_AGENT} UP.Browser RewriteRule ^$ /mobile/index.html [R] ------------------------------------------------------------

    • ベストアンサー
    • HTML
  • 携帯サイト キャリア別 振り分け

    携帯サイトの3キャリアを別々にphpにて作成しようと思っています。 URLをhttp://www.goo.co.jp/mobile/(携帯サイトのURL)だとします。 mobileのディレクトリ内にindex.php、docomo.php、au.php、softbank.phpを入れておきます。 携帯でhttp://www.goo.co.jp/mobile/index.phpにアクセスした場合、各キャリアで振り分けは行います。 docomoでアクセスした場合、docomo.phpのページが表示されるようにheader("Location:")を使用すると http://www.goo.co.jp/mobile/docomo.phpのページが表示されます。 softbankでアクセスした場合→http://www.goo.co.jp/mobile/softbank.php auでアクセスした場合→http://www.goo.co.jp/mobile/au.php と表示されると思います。 ここまではわかるのですが、ここからが質問です。 docomoでアクセスしてもURLの表示をhttp://www.goo.co.jp/mobile/だけにするにはどうしたらよろしいでしょうか? 表示されるページはmobile/docomo.phpのページだが、表示されるURLはhttp://www.goo.co.jp/mobile/となるようにしたいです。 softabank、auの場合でもmobile/softbank.php、mobile/au.phpを表示しているが、URLの表示はhttp://www.goo.co.jp/mobile/となるようにしたいです。 また、softbankでhttp://www.goo.co.jp/mobile/docomo.phpを直接入力してもsoftbank.phpが表示されるようにするにはどのようにプログラムを組めばよろしいでしょうか? 説明がしにくいため、質問内容がわからないと思いますが、記述方法又は参考サイトをご存じの方はご教授お願い致します。

    • ベストアンサー
    • PHP
  • .htaccessによる携帯・PCアクセス振り分けについて

    下のような内容の.htaccessで、http://www.test/index.htmlに携帯でアクセスしてくるのをhttp://www.test/mobile/ に飛ばせるようにしています。ちなみに.htaccessはhttp://www.test/index.htmlの横に置いています。 ------------------------------------------ Options +FollowSymLinks RewriteEngine On RewriteCond %{HTTP_USER_AGENT} ^(DoCoMo|KDDI|DDIPOKET|UP\.Browser|J-PHONE|Vodafone|SoftBank) RewriteRule ^$ http://www.test/mobile/index.html [R] ------------------------------------------ しかし、これだと http://www.test/index.html に携帯でアクセスした場合はきちんと飛ばされますが、例えば http://www.test/Profile/Profile.html といった、中に入ったページに携帯でアクセスした場合、うまく飛んでくれません。 どうしたら良いのでしょうか? 宜しくお願い致します。

  • .htaccessによる携帯サイト転送方法

    小さな会社で自社サイトの管理を担当している者です。 現在はPCサイトと支店サイトのみなのですが、新たにモバイルサイトを構築することになりました。 このような構成です。 http://www.○○○.jp/ (本店PCサイト) ├ http://www.○○○.jp/●●●/(本店モバイルサイト) └ http://www.○○○.jp/□□□/(支店PC&モバイルサイト) 携帯電話からPCサイトにアクセスした際、同じURLでモバイルサイトに自動転送したいです。 しかし問題なのが支店PCサイトです。 .htaccessを上の階層(ここではPCサイトの階層)に置くと、それ以下の階層にまで影響を与えるということなのですが http://www.○○○.jp/□□□/に携帯からアクセスしたら、http://www.○○○.jp/●●●/に転送されてしまうのでしょうか? 支店サイトは別な担当者が管理しているのですが、シンプルなサイトでPCと携帯用でワンソース、javascriptで携帯用のスタイルシートに振り分けているようです。 そのため、本店のモバイルサイトの影響がないようにしたいです。 .htaccess以外にも、携帯電話からのアクセスを自動振分けするようなプログラムはありますか? いろいろなサイトで調べているのですが、この問題でずっとつまずいており先に進めません。 お手数ですが、何かアドバイスをいただけると助かります。 宜しくお願い致します。

    • ベストアンサー
    • CSS
  • .htaccessで携帯とPCの振り分け

     .htaccessで携帯サイトとPCサイトの振り分けで困っています。 .htaccessは以下の通りです。 <IfModule mod_rewrite.c> RewriteEngine On # SoftBank RewriteCond %{HTTP_USER_AGENT} ^J-PHONE [OR] RewriteCond %{HTTP_USER_AGENT} ^Vodafone [OR] RewriteCond %{HTTP_USER_AGENT} ^MOT- [OR] RewriteCond %{HTTP_USER_AGENT} ^SoftBank RewriteRule ^$ /mobile/[R=302,L] # DoCoMo RewriteCond %{HTTP_USER_AGENT} ^DoCoMo RewriteRule ^$ /mobile/[R=302,L] # au(HDML-Only) RewriteCond %{HTTP_USER_AGENT} ^UP.Browser RewriteRule ^$ /mobile/[R=302,L] # au(HTML-OK) RewriteCond %{HTTP_USER_AGENT} ^KDDI RewriteRule ^$ /mobile/[R=302,L] </IfModule>  これで、PCからのアクセスはどのページへも正常なのですが、携帯からのアクセスはhttp://example.comですとちゃんと携帯サイトのindex.htmlへいくのですが、http://example.com/***.htmlで携帯からアクセスするとPCサイトのhttp://example.com/***.htmlへつながってしまいます。この場合、携帯サイトのindex.htmlへ導くためにはどのようにすればよいのでしょうか。  また、欲を言えば、PCサイトのそれぞれのページにアクセスしてきた携帯をindex.htmlではなく、携帯サイトのそれぞれの該当するページへと導くためにはどのようにしたらよいのでしょうか。  まったくの初心者ですが、よろしくお願いいたします。

  • 【PHP・.htaccess】PCと携帯の振り分けについて

    【PHP・.htaccess】PCと携帯の振り分けについて お世話になります。 PHP・.htaccess共に初心者なのですが、 PCサイトと携帯サイトの振り分けで悩んでいるので宜しくお願い致します。 現在の構成が http://sample.com/ ←トップページ(PHPファイルのみ。各トップへ振り分け) http://sample.com/pc/ ←PCトップページ http://sample.com/mo/ ←モバイルトップページ(.htaccessでIP制限。PCからのアクセスはトップへ) ---------------------------------------------------- 振り分けPHP(http://sample.com/) <?php $agent = $_SERVER['HTTP_USER_AGENT']; if(preg_match("/^DoCoMo/i", $agent)){ header("Location: http://sample/mo/"); exit; }else if(preg_match("/^(J-PHONE|Vodafone|MOT-[CV]|SoftBank)/i", $agent)){ header("Location: http://sample/mo/"); exit; }else if(preg_match("/^KDDI-/i", $agent) || preg_match("/UP.Browser/i", $agent)){ header("Location: http://sample/mo/"); exit; }else{ header("Location: http://sample/pc/"); exit; } ---------------------------------------------------- となって居ますが、都合により http://sample.com/ ←PCトップ モバイルからのアクセスはmoに振り分け。 http://sample.com/mo/ ←モバイルトップページ。(.htaccessでIP制限。PCからのアクセスはトップへ) 上記の形に切り替えたいと思っています、 PHPを使って振り分けをしたいと思っているのですが、 上記の形を再現する事は出来ますでしょうか? また、.htaccessを利用する事により解決が出来るのであれば、 そちらもご教授いただけると幸いです。

    • 締切済み
    • PHP
  • .htaccessで携帯サイトとPCサイトの振り分け

    http://○○.com/ 携帯サイトメイン       └/www/ PCサイトメイン作成中 http://○○.com/       └/www/をロリポップ利用中でをサブドメインにして http://www.○○.com/ としました。 http://○○.com/に 携帯でアクセスした場合 http://○○.com/ PCでアクセスした場合 http://www.○○.com/ としたいのです。 現在携帯サイトをメインに展開しているので、 携帯サイトをメインにしたページの振り分けの仕方がわかりません。       http://○○.com/PCサイトメイン       └/mobile/携帯サイトメイン で.htaccessの内容を RewriteEngine on RewriteCond %{HTTP_HOST} ^(www\.○○\.com)(:80)? [NC] RewriteRule ^(.*) ?http://○○.com/$1? [R=301,L] RewriteCond %{HTTP_USER_AGENT} ^(DoCoMo|KDDI|DDIPOKET|UP\.Browser|J-PHONE|Vodafone|SoftBank) RewriteRule ^$ /mobile/ にして携帯のアクセスを振り返ることができましたが この反対にしたいのですが可能でしょうか?

  • PCサイトと携帯サイトを.htaccessで切り分けしたい

    今、下記のようにPC用のページと携帯用のページを作っています。 (わかりにくくて申し訳ありません) aaa.bbb -index.html -.htacces | - mobile(フォルダ名)   -index.html この状況で、 携帯からPCサイトにアクセスしてきた場合に、 htaccessを使って、強制的に携帯サイト /mobile/index.html に飛ばしたいと思い、下記のような記載にしています。 (なお、ある理由により、http://www.aaa.bbbでアクセスされたものは、強制的に http://aaa.bbb にもしています) -------------------------------------------------------------- RewriteEngine on RewriteCond %{HTTP_HOST} ^(www\.aaa\.bbb)(:80)? [NC] RewriteRule ^(.*) http://aaa.bbb/$1 [R=301,L] RewriteCond %{HTTP_USER_AGENT} ^(DoCoMo|KDDI|DDIPOKET|UP\.Browser|J-PHONE|Vodafone|SoftBank) RewriteRule ^$ /mobile/ -------------------------------------------------------------- .htaccessの基本を理解していないのが問題なのですが、 どうすればうまくできるのかご教授頂けないでしょうか? よろしくお願いします。

    • ベストアンサー
    • HTML

専門家に質問してみよう