みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

スマフォ、ガラケー、PCの振り分けについて

同一ディレクトリ内にあるファイルの振り分けを行いたいです。
どのページにきても、それぞれアクセスのあったキャリアにあわせたページに飛ばしたいです。
同じ構成のディレクトリが3階層目まであるのですが、それぞれのディレクトリ内にて振り分けを行いたいです。
3階層目のディレクトリの数が多い為、htaccessにしろphpにしろ、同一の書き出しにて振り分けを行いたいので、各ディレクトリ内での相対パスによるページ呼び出し、もしくは文字列の付与を行いたいです。


index.php[PCページ]
sp-index.php[スマフォページ]
mb-index.php[ガラケーページ]
 │
 │
 └index.php
  sp-index.php
  mb-index.php
   │
   │
   ├index.php
   │sp-index.php
   │mb-index.php
   │
   │
   ├index.php
   │sp-index.php
   │mb-index.php
   │
   │
      ・
      ・
      ・
      ・
      ・
      ・




また、下記文字列を付与、削除するhtaccessを全てのディレクトリ内にいれて振り分け自体は上手くいったのですが、
スマフォ、ガラケーでのサイト内でのリンクがうまくいきませんでした。

サイト内リンクは1階層目(トップページ)、2階層目(カテゴリーページ)、3階層目(プロダクトページ)をそれぞれリンクで繋いでいたのですが、スマフォ、ガラケーページのみ上手く動いてくれません。

スマフォページの場合、トップページからカテゴリーページへのリンクの記述を、下記2パターン試してみたのですがだめでした。
<a href="./category01/sp-index.php">
<a href="./category01/">



RewriteEngine On
RewriteBase /

# 1.No enter except MOBILE(sp-index.phpART)
RewriteCond %{REQUEST_URI} ^/mb-index.php
RewriteCond %{HTTP_USER_AGENT} ^.*(iPhone|iPod|Android).*$
RewriteRule ^mb-index.php(.*)$ sp-index.php$1 [R]

# 2.No enter except MOBILE(PC)
RewriteCond %{REQUEST_URI} ^/mb-index.php
RewriteCond %{HTTP_USER_AGENT} !^(DoCoMo|J-PHONE|KDDI|DDIPOKET|UP\.Browser|J-PHONE|Vodafone|SoftBank).*$
RewriteRule ^mb-index.php(.*)$ $1 [R]

# 3.No enter except sp-index.phpART(MOBILE)
RewriteCond %{REQUEST_URI} ^/sp-index.php
RewriteCond %{HTTP_USER_AGENT} ^(DoCoMo|J-PHONE|KDDI|DDIPOKET|UP\.Browser|J-PHONE|Vodafone|SoftBank).*$
RewriteRule ^sp-index.php(.*)$ mb-index.php$1 [R]

# 4.No enter except sp-index.phpART(PC)
RewriteCond %{REQUEST_URI} ^/sp-index.php
RewriteCond %{HTTP_USER_AGENT} !^(DoCoMo|J-PHONE|KDDI|DDIPOKET|UP\.Browser|J-PHONE|Vodafone|SoftBank|.*iPhone|.*iPod|.*Android).*$
RewriteRule ^sp-index.php(.*)$ $1 [R]

# 5.No enter except PC(MOBILE)
RewriteCond %{REQUEST_URI} !^/mb-index.php
RewriteCond %{REQUEST_URI} !^/sp-index.php
RewriteCond %{HTTP_USER_AGENT} ^(DoCoMo|J-PHONE|KDDI|DDIPOKET|UP\.Browser|J-PHONE|Vodafone|SoftBank).*$
RewriteRule ^(.*)$ mb-index.php$1 [R]

# 6.No enter except PC(sp-index.phpART)
RewriteCond %{REQUEST_URI} !^/mb-index.php
RewriteCond %{REQUEST_URI} !^/sp-index.php
RewriteCond %{HTTP_USER_AGENT} ^.*(iPhone|iPod|Android).*$
RewriteRule ^(.*)$ sp-index.php$1 [R]




サイト内リンクの問題をクリアーした、振り分け方法を教えて下さい。

投稿日時 - 2012-08-12 18:55:40

QNo.7640441

すぐに回答ほしいです

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

ANo.1

少なくともページ全体がPHPで作られているなら振り分け毎にphpなんて用意しない。
すべて一つのファイルで表示を切り替えるだけで振り分けする。

見た目なんてテンプレートエンジン使って切り替えれば良いだけだし。

投稿日時 - 2012-08-13 12:09:06

あなたにオススメの質問