我在.htaccess文件中使用了以下内容。从网址我必须得到结果1)城市基于2)城市基于分页3)城市和类别基于4)城市和类别以分页为基础。
RewriteCond %{THE_REQUEST} \s/+filter\.php?cityselect=([^&\s]+) [NC]
RewriteRule ^ %9? [R=301,L,NE]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/\.]+)/?$ store.php?city=$1 [QSA,L]
RewriteRule ^([^/\.]+)/([^/\.]+)/?$ store.php?city=$1&page=$2 [QSA,L]
RewriteRule ^([^/\.]+)/([^/\.]+)/([^/\.]+)/?$ store.php?city=$1&category=$2&page=$3 [QSA,L]
我需要改进这些类型条件的结果
1. www.domain.com/cityname
2. www.domain.com/cityname/1
3. www.domain.com/cityname/category
4. www.domain.com/cityname/category/2
print_r($ _ GET):如果我使用第3个链接,那么$ _GET [' page']参数正在调用,这里我需要$ _GET [' category']并且到处都是最后一个参数是页码。如何获取获取参数值的条件格式。
答案 0 :(得分:0)
有这样的话:
RewriteCond %{THE_REQUEST} \s/+filter\.php?cityselect=([^&\s]+) [NC]
RewriteRule ^ %1? [R=301,L,NE]
RewriteCond %{REQUEST_FILENAME} -d [OR]
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^ - [L]
RewriteRule ^([^/.]+)/?$ store.php?city=$1 [QSA,L]
RewriteRule ^([^/.]+)/([0-9]+)/?$ store.php?city=$1&page=$2 [QSA,L]
RewriteRule ^([^/.]+)/([^/.]+)/?$ store.php?city=$1&category=$2 [QSA,L]
RewriteRule ^([^/.]+)/([^/.]+)/([^/.]+)/?$ store.php?city=$1&category=$2&page=$3 [QSA,L]