我正在尝试重写我的商店系统的类别文件,我还整合了一个分页,所以我需要重写2个参数。它几乎可以工作,否则我不会在这里发帖
这是重写
RewriteRule ^shop/cat/(.*)/page/([0-9]+)$ /cmstut/shop/cat.php?cat=$1&page=$2 [QSA,L]
这是网址
http://localhost/cmstut/shop/cat/32/page/2
猫工作但不是页面,当我打印查询字符串时,我得到了这个:
cat=32/page/2
我做错了什么?我期待像cat = 32& page = 2这样的东西,所以我可以抓住页面并显示分页的正确页面。
答案 0 :(得分:1)
你可能有两条规则,第二条规则如下:
RewriteRule ^shop/cat/(.*)$ /cmstut/shop/cat.php?cat=$1 [QSA,L]
此规则将导致shop/cat/32/page/2
的请求被重写错误。您需要使用更具体的模式:
RewriteRule ^shop/cat/([^/]+)$ shop/cat.php?cat=$1 [QSA,L]
RewriteRule ^shop/cat/([^/]+)/page/([0-9]+)$ shop/cat.php?cat=$1&page=$2 [QSA,L]