2013-08-28 67 views
1

我是非常新的編寫ISISI重寫3從Helicon(許可版本)規則用於IIS6。我需要爲從「subdomain.domain.com」到「www.domain.com」的不同頁面編寫90多條規則,並且我對RegEx模式不太瞭解。不幸的是,這些網站不會鏡像,所以做一個簡單的查詢字符串追加是行不通的。ISAPI重定向3過濾器301重定向與子域

例:重定向「http://subdomain.domain.com/products/product.aspx?id=42」到「http://www.domain.com/productgroup/productinfo

我有它一個很好的開始,但我已經得到了最遠的是獲得一個特定的頁面重定向工作。我需要把它放到這些頁面的特定ID來重定向。目前,我對網頁的代碼重新定向到谷歌(只是爲了測試目的)是

# Helicon ISAPI_Rewrite configuration file 
# Version 3.1.0.102 

RewriteEngine on 
RewriteRule ^(subfolder.html)/?(.*)$ http://www.google.com/ [NC,R=301,L] 

注:我剛剛創建了一個簡單的網站具有以下頁面: - /index.html - /子文件夾/subfolder.html - /subfolder/subfolder2.html - /subdir/subdir.html

根據前面的代碼,「/subfolder/subfolder.html」重定向到谷歌和其他人正常顯示的頁面。出於測試目的,我一直試圖追加「id = 1」重定向到YouTube,「id = 2」重定向到Facebook,而這兩者都沒有在工作。該代碼是

RewriteRule ^(subfolder2.html\?id=1)$ http://www.youtube.com/ [NC,R=301,L] 
RewriteRule ^(subfolder2.html\?id=2)$ http://www.facebook.com/ [NC,R=301,L] 

所有我需要的是讓一個可行的模式,那麼我可以從那裏修改它,使之成爲該頁面的其餘部分工作。

謝謝你的回覆!

回答

1

經過大量的試驗和錯誤,這是我最終得到它的工作。

RewriteEngine on 

RewriteCond %{QUERY_STRING} ^id=1 [NC] 
RewriteRule products/product_detail.aspx http://www.newdomain.com/NewProductPage [NC,R=301,L] 

從我對它的理解中,「RewriteCond」查找該ID(在這種情況下)。 RewriteRule包含原始URL 而不包含查詢字符串(products/product_detail.aspx)和重定向URL(http://www.newdomain.com/NewProductPage)。