2008-11-03 34 views
3

感謝您回答我的問題。我有以下頁面。使用登錄控件登錄到應用程序後,重定向到default.aspx而不是「xxx.aspx」

  • login.aspx的
  • 的Default.aspx
  • xxx.aspx

登錄到應用程序的Default.aspx後就會顯示出來。現在,如果用戶試圖打開http://server/xxx.aspxα-ID = 1234直接在瀏覽器中指定其URL,顯示登錄屏幕和全成登錄後,系統重定向到「Default.aspx的」,而不是「http://server/xxx.aspx?id = 1234「。實際上有一個外部應用程序會這樣稱呼我的系統。所以請讓我知道爲什麼會發生這種情況。 .Net登錄控件用於登錄到應用程序。請幫我解決這個問題。

感謝,
昂Vin的

+0

你可以發佈你在你的「登錄」例程和/或任何身份驗證你有你的web.config? – 2008-11-03 18:44:08

回答

0
Response.Redirect(Request.UrlReferrer.ToString()); 
2

您在使用窗體身份驗證或直接在應用程序這樣做呢?如果你在web.config中做了這樣的事情,它會處理所有的重定向。

<authentication mode="Forms"> 
      <forms name="FwLoginCookie" loginUrl="Login.aspx" 
     protection="All" 
     path="/" > 
      </forms> 
     </authentication> 
     <authorization> 
      <deny users="?"/> 
     </authorization> 

URL中有什麼聲明ReturnURL?有了上述設置,如果用戶試圖去xxx.aspx我期望登錄對話框的URL看起來像「Login.aspx?ReturnUrl = xxx.aspx」

1

檢查您是否設置DestinationPageUrl屬性在登錄控制中:

<asp:Login 
    ID="Login1" 
    runat="server" 
    DestinationPageUrl="~/Default.aspx"> 
</asp:Login> 

我假設你有這個屬性覆蓋了你實際尋找的默認行爲。

相關問題