• 締切済み

mod_rewriteでURLの書き換えができない

mod_rewriteでURLの書き換えを行おうと思っていますが なぜだか以下のような現象となりURLの書き換えが正常に行うことが できません。 【期待する動作】 (1)のようなURLでアクセスした場合、(2)のようなURLに 書き換えを行いたいが、(3)のようなURLになってしまい 正常に書き換えが行われない。 (1) http://example.com/hoge/list/01/01 (2) http://example.com/hg/list/360/01 (3) http://example.com/hg/list/.asp/360/01 ※ (1)のURLに含まれない拡張子のようなものが含まれてしまう。 【.htaccessの設定】 RewriteEngine on RewriteBase / RewriteRule ^hoge/list\/?(.*)$ /hg/list/$1 [R=301,L,QSA] 【環境】 OS:CentOs Web:Apache2.x その他:.aspという拡張子のファイルはPHPが動作するように設定してあります。 おそらくどこかの設定でこのような現象になってしまっているのだと思いますが、 どこの設定を見たら良いか検討がつきません。 どんな些細なことでも結構ですので、助言を頂けたら幸いです。

みんなの回答

  • notnot
  • ベストアンサー率47% (4900/10358)
回答No.2

>(2) http://example.com/hg/list/360/01 は、 (2) http://example.com/hg/list/01/01 の間違いですよね? お書きのリライトルールで、正しく http://example.com/hg/list/01/01 にリダイレクトされるはずですが、 >(3)のようなURLになってしまい正常に書き換えが行われない。 は、何故そう思ったのですか? http://example.com/hg/list/01/01 へのアクセスは発生しているはずなので、hg や hg/list がディレクトリならそこの .htaccess 、スクリプト等ならそのスクリプトが何かしていると思われます。

noname#130824
noname#130824
回答No.1

RewriteEngine on RewriteRule ^hoge/list.asp/(.*)$ /hg/list/$1 [R=301,L,QSA]

参考URL:
http://xn--u8jxb9ib9150b2px.jp/htaccess/rewritecgi/

関連するQ&A