PHP友好的网址.htaccess - 搜索页面

时间:2012-07-29 00:54:08

标签: php apache .htaccess mod-rewrite

我的.htaccess文件可以正常使用以下网址

http://www.mywebsite.com/product/category/Girls-Clothes

.htaccess文件:

RewriteEngine On

RewriteRule ^product/category/([a-zA-Z0-9-/]+)$ /product/category/category.php?cid=$1
RewriteRule ^product/category/([a-zA-Z0-9-/]+)/$ /product/category/category.php?cid=$1

但是当我使用页码和友好的网址时,它就无法使用

http://www.mywebsite.com/product/category/Girls-Clothes?pno=2

我有两个变量 cid pno ,在.htaccess中提到了CID但是当我重新编写“pno”时它会给我sql错误。

RewriteRule ^uk/category/([a-zA-Z0-9-/]+)$ /uk/category/category.php?cid=$1?pno=$1
RewriteRule ^uk/category/([a-zA-Z0-9-/]+)/$ /uk/category/category.php?cid=$1?pno=$1

请让我知道我在哪里做错了

1 个答案:

答案 0 :(得分:2)

根据您当前的尝试,您正在使用pno中的相同值替换cid的值,“Girls-Clothes”,我怀疑这不是您想要的。

只需使用QSA标志将现有查询字符串附加到请求中,因此pno=会与您添加的cid参数一起通过重写。

RewriteRule ^uk/category/([a-zA-Z0-9-]+)/?$ /uk/category/category.php?cid=$1 [L,QSA]

另请注意,我通过附加/?并从/删除[]将其缩减为一行,以使尾随斜杠可选。