2011-12-06 42 views
0

我有一個網址/content/sell.htm?ld=a&id=b&_escape_fragment_=how-it-works 並希望使用mod_rewrite將其重定向到以下url格式/details?pageIdent=<parameter after _escape_fragment_> & <rest of query string as it is>查找mod_rewrite文件中特定單詞之前的其餘查詢字符串

所以在這種情況下,服務器的網址將是/details?pageIdent=how-it-works&ld=a&id=b

我寫了下面的重寫規則來獲取_escape_fragment_的參數值,但是我無法寫入規則來獲取原樣查詢字符串的其餘部分。

RewriteCond %{QUERY_STRING} (?:^|&)_escaped_fragment_=([^&]+) 
RewriteRule ^/content/sell\.htm /details?pageIdent=%1 [L,R=301] 

任何人都可以幫助我獲取其餘的查詢字符串,並將其追加到最終的url結尾,因爲它是。我希望我在解釋自己的時候有一定道理。

另外如果有人能解釋,什麼正則表達式(?:^|&)表示。我只是從某處複製它。

感謝

Jitendra

回答

0

是否通過QSA不給你想要什麼?當你在重寫規則中已經有了參數時,我很想知道它是如何工作的。

RewriteRule ^/content/sell\.htm /details?pageIdent=%1 [L,R=301,QSA] 
+0

QSA會附加完整的查詢字符串。我不想再追加_escape_fragment_參數。 – RandomQuestion