- ベストアンサー
htaccessでURLを階層式の短縮URLに
htaccessに関する質問です。 GETパラメータのついたURLを、 ディレクトリ式の短縮URLにしたいです。 例) http://〇〇〇.jp/detail.php?no=123456 ↓以下のように http://〇〇〇.jp/123456/ htaccessにどのように記述すればよいでしょうか。 簡単な説明もいただけるとうれしいです。 ご指導ください。 よろしくお願いします。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
RewriteEngine on RewriteRule ^/([0-9]+)/$ /detail.php?no=$1 [L] って感じですかね。 「RewriteEngine on」でmod_rewriteというURL書換機能を有効にします。 「RewriteRule」は書換ルールの設定で、第1引数は閲覧者が入力するURLを正規表現で記述していて、パスがスラッシュで始まってスラッシュで終わり、中に数字が1文字以上入っているというパターンを指定してます。 第2引数は実際に動作する際のURLで、$1 と言うのは第1引数の正規表現で1個目のカッコで括られた部分にマッチした値で置き換えるという意味です。 第3引数の [L] は書換ルールの処理条件で、この書換ルールにマッチしたら書換処理を終了するという意味です。 mod_rewrite で検索すると沢山解説ページが見つかると思います。
お礼
とても分かりやすいです! やさしい言葉で解説いただきましてありがとうございます!