此前不久有人問,但它仍然在那裏,所以這裏的一個答案:
規則已.asp的在裏面,所以它正在尋找這個網址。由於您只需要產品名稱,請嘗試此操作,而不在規則中使用.asp。
這是下ISAPI_Rewrite V3:在映射文件
RewriteMap mapfile txt:mapfile.txt [NC]
RewriteRule /([^/]+) /Products.asp?Prod=${mapfile:$1} [NC,QSA,L]
使用[NC]讓你有law 2
無需擔心的情況。 (這是在3.1.0.62版本和更新,這是很久以前)。
v3處理規則外的參數,所以規則不需要尋找?
。
QSA會將您的Prod參數附加到任何傳入參數。由於你的規則在?
停止,我假設你也想處理傳入的參數。所以參數會存活。
這保持你在(第一斜線後)斜線停止的規則,所以一切從一個斜線起將進行匹配被忽略,從結果中刪除。
因此,這將重寫URL是這樣的:
/LAW to /Products.asp?Prod=2
/lAw to /Products.asp?Prod=2
/LAW?abc=123 to /Products.asp?Prod=2&abc=123
/LAW/ to /Products.asp?Prod=2
/LAW/?abc=123 to /Products.asp?Prod=2&abc=123 (slash is dropped, but parameters survive)
/LAW/morestuff to /Products.asp?Prod=2 (/morestuff is dropped)
/LAW/morestuff?abc=123 to /Products.asp?Prod=2&abc=123 (/morestuff is dropped, but the parameters survive)
原始參數是追加到規則替代參數(S)的結束,從文件確定,從日誌文件中進行驗證。
你真的嘗試了什麼網址? – Gumbo 2009-08-09 08:39:00
你好,我 試圖讓 http://www.mydomain.com/products.asp?prod=2 到 http://www.mydomain.com/LAW 或 HTTP://www.mydomain .COM /產品-LAW – user153230 2009-08-09 14:29:54