[英].htaccess RewriteRule to allow levels of sub-directory
I have the following RewriteRule code 我有以下RewriteRule代码
RewriteRule ^(.*)/(.*)/(.*)$ /page.php?menu=$1&submenu=$2&submenu2=$3 [L,QSA,NC]
RewriteRule ^(.*)/(.*)$ /page.php?menu=$1&submenu=$2 [L,QSA,NC]
RewriteRule ^(.*)$ /page.php?menu=$1 [L,QSA,NC]
What I need it to do i this: 我需要做的是这个:
If the url is something like mydomain.com/test
go to mydomain.com/page.php?menu=test
如果网址类似于mydomain.com/test
请转到mydomain.com/page.php?menu=test
If the url is something like mydomain.com/test/site
go to mydomain.com/page.php?menu=test&submenu=site
如果该网址类似于mydomain.com/test/site
请转到mydomain.com/page.php?menu=test&submenu=site
If the url is something like mydomain.com/test/site/stuff
go to mydomain.com/page.php?menu=test&submenu=site&submenu2=stuff
如果该网址类似于mydomain.com/test/site/stuff
请转到mydomain.com/page.php?menu=test&submenu=site&submenu2=stuff
These seem to clash with each other though. 这些似乎相互冲突。
Any idea how I can improve it to make it work.? 知道如何改进它才能使它工作吗?
Keep your rules like this: 保持这样的规则:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -d [OR]
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^ - [L]
RewriteRule ^([^/]+)/([^/]+)/([^/]+)/?$ /page.php?menu=$1&submenu=$2&submenu2=$3 [L,QSA]
RewriteRule ^([^/]+)/([^/]+)/?$ /page.php?menu=$1&submenu=$2 [L,QSA]
RewriteRule ^([^/]+)/?$ /page.php?menu=$1 [L,QSA]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.