mod_rewriteネタその2

2007/01/05 | mojavi2

mojaviで使うmod_rewriteだけど、少しだけ進展させてみた。
こんな内容。

RewriteEngine On

# 実在ファイルへのアクセスはそのまま流す
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.* – [L]

#モジュールだけ指定されていた場合はactionはindexを指定
RewriteRule ^([^/]+)/?$ – [C]
RewriteRule !^rulebase/? – [C]
RewriteRule ^([^/]+)/?$ /index.php?module=$1&action=index [L]

#モジュールとアクションだけが指定されていたら(スラッシュの
#有無にかかわらず)
RewriteRule ^([^/]+)/([^/]+)/?$ – [C]
RewriteRule !^rulebase/? – [C]
RewriteRule ^([^/]+)/([^/]+)/?$ /index.php?module=$1&action=$2 [L]

#後ろにスラッシュがあって、さらにパラメータが指定されたら
#とりあえずモジュールとアクションだけ書き換え
RewriteRule !^rulebase/? – [C]
RewriteRule ^([^/]+)/([^/]+)/(.*) /rulebase/$3?module=$1&action=$2

#次にパラメータを書き換えて、パラメータの数だけ繰り返す
RewriteRule ^rulebase/([^/]+)/([^/]+)(.*)$ /rulebase$3?$1=$2 [QSA,N]
RewriteRule ^rulebase/?$ /index.php [QSA,L]

いちおう動いている模様。
これで進めることにする。

コメントを残す


守谷市(まちの情報ポータル) 無料アンケートレンタルjpForm.net