2010-04-01 15 views
2

希望有一個簡單的問題,儘管我發現不可能用Google來回答自己!針對所有入站URL的IIS URL重寫?

我對IIS網站的URL http://www.contoso.com/指向C:\ WWW \ PUBLIC \

已經有強制目錄重組所以現在所有的數據(Default.aspx的,Product.aspx,等等)原來位於C:\ www \ public \現在駐留在C:\ www \ public \ en \ ie \ - 但是,IIS網站文檔根目錄仍然是C:\ www \ public \

,本質上,我有很多入站鏈接到http://www.contoso.com/Product.aspx?id=1(等),現在返回404錯誤 - 正確的鏈接現在http://www.contoso.com/en/ie/Product.aspx?id=1

請考慮我可以不改變目錄結構或IIS文檔根...所以我必須使用URL重寫來解決這個問題。

是否有可能將全部請求捕獲到contoso.com/*並將其重寫爲contoso.com/en/ie/*?

回答

-1

將網站的根目錄從C:\ www \ public \更改爲C:\ www \ public \ en \ ie \,一切都應該沒問題。

如果你不能以任何理由這樣做,做一個自定義的404頁和重寫URL在那裏,並用301

請參閱重定向:http://searchengineland.com/url-rewriting-custom-error-pages-in-aspnet-20-12234

+0

請考慮,我可以不做任何更改目錄結構或IIS文檔根......所以我必須解決這個入站規則問題使用URL重寫。 文件存在於仍然通過HTTP提供的/ en/ie/dir級別之上。 – 2010-04-01 09:07:03

+0

它只是您的網站的IIS設置 – Ivo 2010-04-01 09:11:00

+0

我必須重新說明,我*不能*對URL進行任何修改而不是重寫URL。我希望我能,但在目前的情況下我不能。我知道這並不完美,但它就是這樣。具有301重定向的自定義404頁面不會導致真正的404錯誤發生無限循環嗎? – 2010-04-01 09:22:41