2012-10-04 22 views
0

我正在尋找使用Umbraco中的URLRewriting.config來設置一些重定向。他們中的大多數工作正常,但有一些令人頭痛。Umbraco中的URL重寫 - 頁面在新目錄下移動

我有一個網頁:/testpage.aspx它在新網站上現在是/directory/testpage.aspx。我已經嘗試了一些規則,但它們要麼陷入循環,要麼只是將我發送到第一頁 - 這顯然會導致404錯誤。

據我所知,下面的規則應該滿足這個重寫和工作,但相反,我只是得到原始頁面 - 這是一個404網站。

<add name="Redirect400" rewriteUrlParameter="ExcludeFromClientQueryString" redirect="Domain" ignoreCase="true" 
    virtualUrl="^~/testpage.aspx$" 
    destinationUrl="/directory/testpage.aspx" 
    redirectMode="Permanent" /> 

那些正則表達式(請糾正我,如果我錯了),應該說是開頭和結尾/testpage.aspx任何頁面重定向到新的網址是什麼?任何人都可以提供這方面的協助嗎?

回答

2

有在虛擬的網址有點變化,因爲只有獲得已www.domain.com/testpage.aspx

它不會得到如下結果:

  1. www.domain.com/ ABC/testpage.aspx
  2. www.domain.com/abc/main/testpage.aspx
  3. www.domain.com/abc/main/test/testpage.aspx

請嘗試下面,我沒有測試過,但我猜測是這樣。

<add name="Redirect400" rewriteUrlParameter="ExcludeFromClientQueryString" redirect="Domain" ignoreCase="true" 
    virtualUrl="^~(.*)/testpage.aspx$" 
    destinationUrl="/directory/testpage.aspx" 
    redirectMode="Permanent" /> 

讓我知道如果你需要更多的幫助,感謝

+0

喜@ ANKUR-ghelani,這仍然不是爲我工作。當我使用該語法時,該URL仍然以如下形式結束: '/ directory/directory/directory/directory/directory/testpage.aspx' – edparry

+0

我不是100%是否這是問題的正確解決方案,但通過使用redirect =「Application」,重定向現在可以正常工作,而不會陷入無限循環。 – edparry

+1

有些時候,它與IIS有關,它可能需要重新啓動,然後才能正常工作,這可能是因爲你已經找到了解決問題的方法 –