2009-05-01 104 views
0

我掙扎得到一些代碼的舊ASP存儲網站我管理的工作 - 我加入這工作得很好ISAPI重寫語法幫助?

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 

我希望更有意義嗎?

回答

0

我想這就是你要求的,設置[L]參數使它在第一次匹配時停止匹配。 ?

但是[L]需要你通過最嚴格的第一,4個ARGS,然後3,2等命令他們......

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] 
+0

感謝回答 - 我已經修改了我的問題稍微因爲我不我想我很好地解釋了自己 - 請讓我知道你是否可以提供幫助? – leen3o 2009-05-01 13:03:23