PCとスマートフォンでのサイト振り分けに関する対処方法

このQ&Aのポイント
  • PCとスマートフォンでサイトの振り分けには.htaccessファイルを使用することができます。
  • スマートフォンのサイトは、サブドメインを割り当てて運用することが一般的です。
  • もしPCでスマートフォン用サイトにアクセスした場合は、.htaccessファイルでリダイレクトしてPC用サイトを表示させることが可能です。
回答を見る
  • ベストアンサー

PCとスマートフォンでサイトの振り分けに関して

現在スマートフォンのサイトを構築しています。 事情がありスマートフォンのサイトと、PC用のサイトでは別サーバで運用します。 スマートフォンのサイトは、サブドメインを割り当てて運用する為、基本ドメインは同じになります。 PC用サイト http://www.example.jp/ もしくは http://example.jp/ でアクセスした場合、PCのサイトを表示します。 スマートフォン用サイト http://sp.example.jp/ でアクセスがあった場合、スマートフォン用のサイトを表示します。 現状PCでアクセスしても、スマートフォン用のサイトが表示しています。 振り分けをしたいのは、スマートフォン用のサイトにPCでアクセスした際、PC用のサイトを表示させたい。 PCで http://sp.example.jp/ にアクセスした際に、「.htaccess」ファイルの対応で http://www.example.jp/ を表示させたいと思います。 可能であれば逆にスマートフォンで http://www.example.jp/ もしくは http://example.jp/ にアクセスした場合 http://sp.example.jp/ を表示させたいと思います。 質問として 1,上記の希望を「.htaccess」 ファイルで対処可能か 2,「.htaccess」ファイルで対処可能場合、具体的な記述を教えて頂きたい。 3,「.htaccess」ファイル以外で、対処が可能場合その方法を教えて頂きたい。 自分なりに調べた範囲では、同一サーバ内でPC用のディレクトリ、スマートフォン用のディレクトリへ導く方法は参考になりましたが、今回は別のサーバになる為少し違うのではと思い質問させて頂きました。 参考にしたサイト http://html-five.jp/94/

  • CSS
  • 回答数2
  • ありがとう数1

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

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

スマートフォンサイト側に RewriteEngine on RewriteCond %{HTTP_USER_AGENT} !(iPod|iPhone|iPad|Android|Windows\ Phone) RewriteRule ^(.*)$ http://example.com/$1 [R] PCサイト側に RewriteEngine on RewriteCond %{HTTP_USER_AGENT} (iPod|iPhone|iPad|Android|Windows\ Phone) RewriteRule ^(.*)$ http://sp.example.com/$1 [R] で良いのではないでしょうか。 ※参考 http://html-five.jp/206/ http://html-five.jp/195/

nori_007
質問者

お礼

ありがとうございました。 アドバイス頂いた内容で希望通りのことが実現でした。

その他の回答 (1)

  • tracer
  • ベストアンサー率41% (255/621)
回答No.1

同一サーバーでなくとも参考サイトの内容で問題ないと思いますよ。 リダイレクト先を書き換えるだけでOKだと思います。 ただ、たとえば http://example.jp/hoge/ にスマホからアクセスされたときは、どういう風にリダイレクトさせたいですか? 考えられるのは、 http://sp.example.jp/hoge/http://sp.example.jp/ もしくは http://sp.example.jp/error/ と思いますが。 それによって.htaccessの記述も変わると思います。

nori_007
質問者

補足

アドバイスをありがとうございます。 >http://example.jp/hoge/ PCのサイトに、スマートフォンでトップページ(表紙)意外にアクセスした場合ですね。 想定していませんでした。指摘をありがとうございます。 現状ではPCのサイトとスマートフォンのサイトでは、基本になる部分は同じですが詳細の部分で違っています。PCサイト、スマートフォンサイトで同じコンテンツが用意出来れば、 http://sp.example.jp/hoge/ へリダイレクトさせることが理想ですが、現状ではスマートフォンサイトのトップページへリダイレクト出来ればと思います。 http://sp.example.jp/ になります。

関連するQ&A

  • PC・スマートフォンサイトの振り分けについて

    パソコン用サイトと、スマートフォン用サイトを用意し、スマートフォンでパソコン用サイトにアクセスした場合に、スマートフォン用サイトに自動的に転送(振り分け)するようにしたいのです。 具体的には…。 例えば、 PCサイトのアドレス:www.abc.com/index.html スマートフォンサイトのアドレス:www.abc.com/sp.html の場合、スマートフォンでPCサイト(www.abc.com/index.html)にアクセスした場合、自動的にスマートフォンサイト(www.abc.com/sp.html)に転送(振り分け)をしたいのです。 スマートフォンでPCサイト(www.abc.com/index.html)にアクセスした場合→スマートフォンサイト(www.abc.com/sp.html)へ自動的に転送したいのです。 その場合における、index.htmlに記述すべきJavaScriptの記述内容を教えてください。よろしくお願い致します。

    • ベストアンサー
    • HTML
  • .htaccess でPC/携帯を振り分けつつ、転送方式に301リダイレクトを使う場合

    PCサイトと携帯サイトを、レンタルサーバ上にディレクトリを分けて設置して、 http://www.example.com でアクセスすると /home/www http://m.example.com でアクセスすると /home/m を読みに行くように、.htaccess を設定したいと考えています。 (DNSでは、どちらも通るように設定済みです) また、PC/携帯のアクセス振分も同時に行いたく、サブドメインなしの http://example.com でアクセスすると、端末情報を判別して、 携帯のときは http://m.example.com、それ以外のときは http://www.example.com へ 「301リダイレクト」で転送させたいと思っています。 このような要件を同時に満たすには、どのように.htaccess を記述 すれば良いでしょうか?

  • HTML PCサイトをスマートフォンサイトへ飛ばす

    詳しい方教えて下さい。 HTML記述でPCサイトへアクセスしたスマートフォンを別に用意したスマートフォンページに飛ばす方法を教えて下さい。.htaccess以外でHTMLの記述で実現したいです。 宜しくお願いします。

    • ベストアンサー
    • HTML
  • 携帯サイトの振り分けについて

    説明がややこしかったらすみません。 現在、既存のPCサイトに合わせて新規の携帯サイトを作っています。 PCサイトのURL(index.html)にアクセスをしたときに 携帯からのアクセスは(/mobile/index.html)などに飛ばしたいと考えています。 htaccessでの振り分けを考えていましたが、 サーバーがhtaccessの使用ができないみたいで困っています。 PCサイトの(index.html)は URLの変更はできませんので index.phpなどをおいて phpにアクセスさせて飛ばすこともできなくて どうしたらよいか困っています。 どなたかよい解決方法がお分かりになる方がいらっしゃいませんでしょうか? よろしくお願いいたします。

  • PCサイトと携帯サイトの振り分け

    PCサイトと携帯サイトの振り分けをしたく、いくつかサイトを調べ .htaccess で以下のようにファイルを作り設置しました。 /////////////////// RewriteEngine On RewriteCond %{HTTP_USER_AGENT} ^(DoCoMo|KDDI|DDIPOKET|UP.Browser|J-PHONE|Vodafone|SoftBank) RewriteRule ^$ /m/ [R] /////////////////// ディレクトリ構成は ├ index.html(PCサイトトップ) ├ .htaccess ├ m(ケータイサイト用フォルダ) ├ ├ index.html(ケータイサイトトップ) ├ ├   ├ ガラケーでみると以下のようなエラーになってしまいます。 /////////////////// Not Found The request URL /m/ was not found on this server. /////////////////// 解消方法なにがご存知でしたらお知らせください。

    • 締切済み
    • CSS
  • .htaccessの有効範囲について

    .htaccessの有効範囲について .htaccessの有効範囲について疑問があります。設置されたディレクトリと、そのディレクトリ以下の全てのディレクトリに対して有効であるとの認識です。 http://example.com/.htaccess これは、 (1)http://example.com/にアクセスしてサーバーの設定によりhttp://example.com/index.htmlが表示された場合 (2)http://example.com/index.htmlに直接アクセスした場合 (3)http://example.com/abc/xyz.htmlにアクセスした場合 この3つ全てに適用されますよね? 私はそうだと思っていたのですが、実際は(1)の場合しか効果を発揮していません。 ということは、最後が/で終わるアドレスにしか有効ではないのでしょうか? そう言われると、「設置された"ディレクトリ"と、そのディレクトリ以下全ての"ディレクトリ"に対して有効」という文言もそういうことかというように読めるのですが、腑に落ちません。 もちろん私の.htaccessの書き方に問題がある可能性もありますが、その可能性を除いた場合、効果範囲はどうなるものなのでしょうか。 ご回答宜しくお願いいたします。 ちなみに、.htaccessの内容はユーザーエージェントを用いた携帯からのアクセスのリダイレクトです。 先日この件で質問をさせていただきまして、更に調べたところ上記のように効果範囲が限定されていることに気付きました。

    • ベストアンサー
    • HTML
  • モバイルサイトへの振り分け

    サイト運営をしております。 モバイル向けのサイトを作成し、携帯キャリアからアクセスすれば .htaccessにより自動でモバイルコンテンツが表示されるよう設定したのです。 しかし、検索結果からアクセスするとPC向けが表示されてしまいます。 URL直接入力からアクセスすると、ちゃんとモバイルコンテンツが表示されるのです。 下記サイトを参考にしました。 http://www.systemania.biz/source/keitaihuriwake01.html 私の携帯キャリアはauです。 サイトのサーバはcoreserverです。 何が原因でこうなっているのか教えて下さい。

    • 締切済み
    • CGI
  • .htaccessでのリダイレクト

    .htaccessのリダイレクトで困っています。 .htaccessのリダイレクトが不得手なのでお聞きしたいのですが、 PC用のWEBデータが「/pc/」ディレクトリに入っています。 スマホ用のWEBデータが「/sp/」ディレクトリに入っています。 WEBのルート「/」には何も入っていないのでアクセスがあった場合は、PCの場合は「/pc/」に、スマホの場合は「/sp/」に移動させたいです。 でも、スマホから「/pc/」にアクセスがあった場合は、「/sp/」に移動はさせたいのですが、PCから「/sp/」にアクセスがあった場合はそのまま表示したいです。 さらに、例えば「/pc/access.html」にスマホからアクセスがあった場合は、「/sp/access.html」を表示させたいです。PCとスマホで対応するファイルは全て存在します。 そのような場合の.htaccessの記述方法はどのようになるのでしょうか? ご存じの方がいましたらよろしくお願いします。

  • 各ページ毎にスマートフォンとPCを振り分けるPHP

    現在、携帯サイトとPCサイトをPHPで振り分けております。スマートフォンサイトを構築したので、同じく振り分けをしたいと思っているので、各ページ毎に振り分けるコードを教えて下さい。 例えば… スマートフォンから http://www.〇〇〇.jp/ にアクセスがあった場合。 http://www.〇〇〇.jp/smt/ へ転送。 PCから http://www.〇〇〇.jp/smt/ にアクセスがあった場合。 http://www.〇〇〇.jp/ へ転送。 スマートフォンから http://www.〇〇〇.jp/ABC.html にアクセスがあった場合。 http://www.〇〇〇.jp/smt/ABC.html へ転送。 PCから http://www.〇〇〇.jp/smt/ABC.html にアクセスがあった場合。 http://www.〇〇〇.jp/ABC.html へ転送。 といった感じで対応するページに対応させたいです。 よろしくお願い致します。

    • 締切済み
    • PHP
  • .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