新しく質問する

.htaccessでの転送:転送元URL内のパラメータを削除したい

役に立った:1件
  • 質問者:cocobu
  • 投稿日時:2008/12/15 11:06
  • 困り度:すぐに回答が欲しいです

.htaccessで、1→2に転送したいのですが、
1)http://www.hoge.jp/ie_tokyo/shop/list.asp?s_id=0 …
2)http://www.hoge.jp/tokyo/shop/

下記の記述でうまくいきません。
RedirectMatch 301 /ie_tokyo(.*) http://www.hoge.jp/tokyo/shop/

これだと、下記URLに転送されてしまいます。
http://www.hoge.jp/tokyo/shop/?s_id=0033

パラメータも削除するにはどのように記述すればよいのでしょうか。
ご存じのかたご教示いただけませんでしょうか。よろしくお願いいたします。

この質問への回答は締め切られました。
このQ&Aは役に立ちましたか?(役に立った:1件)
  • 参考になった:1件

No.2ベストアンサー20pt

  • 回答者:t-okura
  • 回答日時:2008/12/20 19:15

RewriteRule ^.* http://www.hoge.jp/tokyo/shop/? [R=301]
の ^.* の部分で任意の URL を書き換えるようにしています。

ここを
RewriteRule ^ie_tokyo http://www.hoge.jp/tokyo/shop/? [R=301]
に変更すればよいはずです。

通報する

この回答へのお礼

教えていただいた方法でできました!!

ルート直下に下記の設定を書いたら期待通り動くようになりました。
RewriteEngine on
RewriteRule ^ie_tokyo http://www.hoge.jp/tokyo/shop/? [R=301]

とても助かりました。どうもありがとうございましたm__m

  • 参考になった:0件
  • 回答者:t-okura
  • 回答日時:2008/12/16 22:59

mod_rewrite が使えるなら
ie_tokyo の下に置いた .htaccess で

RewriteEngine On
RewriteBase /ie_tokyo
RewriteRule ^.* http://www.hoge.jp/tokyo/shop/? [R=301]

とすることで可能です。

通報する

この回答へのお礼

どうもありがとうございますm__m
試してみたのですが、URL内の「ie_tokyo」の部分も動的に生成される文字列だったため、この名前のフォルダが存在しておらず、教えていただいた場所に設置することができませんでした。

試しに直下ディレクトリに下記を書いてみたのですが、転送がループしています、というエラーになってしまいました。
RewriteEngine On
RewriteBase /
RewriteRule ^.* ​http://www.hoge.jp/tokyo/shop/?​ [R=301]

この場合はやはり難しいでしょうか>_<?

  
このQ&Aは役に立ちましたか?(役に立った:1件)

このページのトップへ