我有这些URL
s:
index.php?area=guilds
index.php?area=guilds&page=create
index.php?area=guilds&page=view&name=The+Unit
我能以某种方式只有1个重写规则吗?
/guilds
/guilds/create
/guilds/view/The+Unit
答案 0 :(得分:0)
请尝试以下规则:
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^ - [L]
RewriteRule ^[^/]+$ index.php?area=$0 [L]
RewriteRule ^([^/]+)/([^/]+)$ index.php?area=$1&page=$2 [L]
RewriteRule ^([^/]+)/([^/]+)/([^/]+)$ index.php?area=$1&page=$2&name=$3 [L]
第一条规则是避免重写已经映射到现有文件的URL。其他规则反映了你的三个案例。
答案 1 :(得分:0)
这个应该有效:
RewriteRule /(.+)(?:/(.+))?(?:/(.+))? index.php?area=$1&page=$2&name=$3