リライト
URLを自在に操れるわざ
基本的な書き方
RewriteRule ^/hoge/piyopiyo/([^/]+)/?$ /HogehogePiyopiyo/$1 [QSA,PT,L]
前者がサイトからたたくURLで、後者がサーバ側がアクセスするURL
上記の例だと、
http://localhost/hoge/piyopiyo/aaa/
とアクセスした場合、HogehogePiyopiyoアクションのaaaメソッドにアクセスします。
*ただしSAStrutsを使う前提で話をすすめてます
URLの後の値は、
QSA:リライトしてもパラメータを保持する
PT:?よくわかってない
L:ひっかかったら、ここで処理をやめますよ
詳しいことは以下のURLに!
http://tm.root-n.com/server:apache:module:rewrite
あとは正規表現
*[]の中の^は、否定をあらわす 例:[^A]は、A以外
*?は、前の文字があっても、なくてもいいをあらわす 例:[ab?]だったら、aでもabでもひっかかる
ちなみに、この設定はApacheを使っている場合、Apacheのhttpd.confから呼び出す必要がある
リライトができたら、URL操作がとても楽になる!どんなURLも自在にあやつれる!
よって、ハッピーになれる!