いつも大変お世話になっております。
標題の通り、.htaccessでリダイレクト転送元を複数設定する場合の記述方法についてご教授頂きたく質問致しました。
###希望する実装結果
ディレクトリA直下の①②を
ディレクトリAの中のディレクトリAAの④(index.html)にリダイレクト
[ディレクトリA]
. ┣index.html…① 【11/6 10:27修正】
. ┣piyo.html…②
. ┣.htaccess
. ┗[ディレクトリAA]
. ┣index.html…④
. ┣xxxx.html
【11/6 10:53追記↓】
http://www.test.com/A/index.html もしくは
http://www.test.com/A/piyo.html にアクセスした際、
http://www.test.com/A/AA/index.html にリダイレクトする
###自分で実装した結果
ディレクトリA内に以下の記述をした.htaccessを設置
RewriteEngine on RewriteCond %{THE_REQUEST} ^.*/index.html **【11/6 10:27修正】** RewriteRule ^(.*)index.html$ http://www.test.jp/A/AA/index.html$1 [L,R=301] RewriteEngine on RewriteCond %{THE_REQUEST} ^.*/piyo.html RewriteRule ^(.*)index.html$ http://www.test.jp/A/AA/index.html$1 [L,R=301]
上記の記述だと、index.html **【11/6 10:27修正】**はAA/index.htmlに飛ばされるのですが
piyo.htmlは飛ばされませんでした。
私に知識がない状況で緊急の依頼ということで困り果てていました。
どなたかお力をお貸し頂けないでしょうか。
以上、よろしくお願い致します。
具体的にリクエストのURLとリダイレクト先のURLを記載ください。
質問記載のものをそのまま解釈すると
>RewriteCond %{THE_REQUEST} ^.*/hoge.html
>RewriteRule ^(.*)index.html$ http://www.example.com/A/AA/index.html$1 [L,R=301]
これだと
http://www.example.com/A/index.html?hoge.html
↓
http://www.example.com/A/AA/index.htmlhoge.html
とか
http://www.example.com/A/hoge.htmlindex.html
↓
http://www.example.com/A/AA/index.htmlhoge.html
こうなりますが認識合ってますか?
http://www.example.com/A/piyo.html にアクセスした際
http://www.example.com/A/AA/index.html
にリダイレクトしたいということです。
分かりづらい説明をしてしまい申し訳ございませんでした。
回答1件
あなたの回答
tips
プレビュー