- 締切済み
.htaccess RedirectMatchについて
.htaccessでRedirectMatchを使って、 hoge.php?a=** → hoge.php?b=** というURLに飛ばしたいのですが、正規表現の書き方がよくわかりません。 正規表現についての説明サイトなども見たのですが、よく判らず・・・。 どのように書けばいいのでしょうか?
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- ksk_1975
- ベストアンサー率0% (0/0)
回答No.1
以下のようにしてみてはいかがでしょうか? 変数$1は正規表現でマッチした中身を取り出すのに使用されます。 hoge.php?a=(.*) → hoge.php?b=$1 [例] httpでのアクセスをすべてhttpsに飛ばす。最初の\/はドキュメントルートからのパスになります。 RedirectMatch \/(.*) https://www.example.com/$1
補足
アドバイスありがとうございました。 しかし、私の書き方が悪いのかうまく飛んでくれませんでした。 追加情報ですが、hoge.phpはサブドメインで使っているんです。 http://subdir.mydomain.net/ にアクセスすると http://mydomain.net/subdir/ の中が表示されるようになっています。 この/subdir/の中にhoge.phpがあります。 また、.htaccess関係のサイトで「アクセスされたファイルが実際にあれば転送されるが、ない場合は転送されない」と書いてありました。 前にはあった変数$aを$bに変更してPHPを修正したので、今現在hoge.phpの中に$aに対する処理が何も書かれていません。 これは何か関係がありますか?