• 締切済み

.htaccess RedirectMatchについて

.htaccessでRedirectMatchを使って、   hoge.php?a=** → hoge.php?b=** というURLに飛ばしたいのですが、正規表現の書き方がよくわかりません。 正規表現についての説明サイトなども見たのですが、よく判らず・・・。 どのように書けばいいのでしょうか?

みんなの回答

  • ksk_1975
  • ベストアンサー率0% (0/0)
回答No.1

以下のようにしてみてはいかがでしょうか? 変数$1は正規表現でマッチした中身を取り出すのに使用されます。 hoge.php?a=(.*) → hoge.php?b=$1 [例] httpでのアクセスをすべてhttpsに飛ばす。最初の\/はドキュメントルートからのパスになります。 RedirectMatch \/(.*) https://www.example.com/$1

amane-port
質問者

補足

アドバイスありがとうございました。 しかし、私の書き方が悪いのかうまく飛んでくれませんでした。 追加情報ですが、hoge.phpはサブドメインで使っているんです。 http://subdir.mydomain.net/ にアクセスすると http://mydomain.net/subdir/ の中が表示されるようになっています。 この/subdir/の中にhoge.phpがあります。 また、.htaccess関係のサイトで「アクセスされたファイルが実際にあれば転送されるが、ない場合は転送されない」と書いてありました。 前にはあった変数$aを$bに変更してPHPを修正したので、今現在hoge.phpの中に$aに対する処理が何も書かれていません。 これは何か関係がありますか?

関連するQ&A