- 締切済み
.htaccessでのリダイレクト
.htaccessのリダイレクトで困っています。 .htaccessのリダイレクトが不得手なのでお聞きしたいのですが、 PC用のWEBデータが「/pc/」ディレクトリに入っています。 スマホ用のWEBデータが「/sp/」ディレクトリに入っています。 WEBのルート「/」には何も入っていないのでアクセスがあった場合は、PCの場合は「/pc/」に、スマホの場合は「/sp/」に移動させたいです。 でも、スマホから「/pc/」にアクセスがあった場合は、「/sp/」に移動はさせたいのですが、PCから「/sp/」にアクセスがあった場合はそのまま表示したいです。 さらに、例えば「/pc/access.html」にスマホからアクセスがあった場合は、「/sp/access.html」を表示させたいです。PCとスマホで対応するファイルは全て存在します。 そのような場合の.htaccessの記述方法はどのようになるのでしょうか? ご存じの方がいましたらよろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- notnot
- ベストアンサー率47% (4900/10358)
てすとしてませんが、こんな感じでしょうか。 ReWriteEngin On ReWriteCond %{REQUEST_URI} !^/pc/ ReWriteCond %{REQUEST_URI} !^/sp/ ReWriteCond %{USER_AGENT} スマホ ReWriteRule ^(.*) /sp/$1 [R,L] ReWriteCond %{REQUEST_URI} !^/pc/ ReWriteCond %{REQUEST_URI} !^/sp/ ReWriteCond %{USER_AGENT} PC ReWriteRule ^(.*) /pc/$1 [R,L] ReWriteCond %{USER_AGENT} スマホ ReWriteRule pc/(.*) /sp/$1 [R,L]
- t_ohta
- ベストアンサー率38% (5238/13705)
PCとスマホを何を基準に識別しようとお考えですか? それによって .htaccess の書き方は変わってきます。