我有两个RewriteRules
无法协同工作,每个都会单独工作,但只有最顶层的工作才能合作。
我的目录结构:http://localhost/project/sitepages
页面:
http://localhost/project/sitepages/page1.php?name=pagename
http://localhost/project/sitepages/page2.php?name=pagename&id=pageid&name2=pagename2
我希望如何访问这些页面:
http://localhost/project/pagename
http://localhost/project/pagename/pageid/pagename2
我使用RewriteRule
:
RewriteRule ^(.*)$ sitepages/page1.php?name=$1 [QSA]
RewriteRule ^(.*)$ sitepages/page2.php?name=$1&id=$2&name2=$3 [QSA]
答案 0 :(得分:0)
.*
匹配任何内容显然只有第一条规则有效。
您可以使用以下两条规则:
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([\w-]+)/?$ sitepages/page1.php?name=$1 [QSA,L]
RewriteRule ^([\w-]+)/([\w-]+)/([\w-]+)/?$ sitepages/page2.php?name=$1&id=$2&name2=$3 [QSA,L]