我正在努力为我管理的旧ASP商店网站提供一些代码 - 我添加了以下内容,效果非常好

RewriteBase /
RewriteRule ^cat/[^?/]*_(\d+)\.htm /store/prodList.asp?idcategory=$1 [QSA]

问题是类别页面是否有多个页面!因为它为查询字符串添加了另外两个参数,如此

/store/prodList.asp?idcategory=102&curPage=2&sortField=sortorder

我正在寻找一个获取三个查询字符串参数并将其附加到重写URL的示例...任何人都可以帮忙吗?

例如,目前以下网址正常

cat/productname_5.htm ... equates to ... /store/prodList.asp?idcategory=5

当我有多个页面时,我需要执行以下操作?但是不知道ISAPI语法?

cat/productname_5_2_sortorder.htm ... would equate to ... /store/prodList.asp?idcategory=5&curPage=2&sortField=sortorder

我希望这更有意义吗?

有帮助吗?

解决方案

我认为这就是你所要求的,设置[L]参数使其在第一场比赛时停止匹配。 ?

但是[L]要求你先通过最严格的限制,4个参数,然后是3个等来订购它们......

  ReWriteRule ^/store/([0-9]+)/([0-9]+)/{0,1}$ /store/prodList.asp\?idcategory=$1&curPage=$2 [L]

  ReWriteRule ^/store/([0-9]+)/([0-9]+)/([A-Za-z]+)/{0,1}$ /store/prodList.asp\?idcategory=$1&curPage=$2&sortField=$3 [L]
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top