2008-11-03 2 views
3

내 질문에 답변 해 주셔서 감사합니다. 나는 folowing 페이지가있다.로그인 컨트롤을 사용하여 앱에 로그인 한 후 "xxx.aspx"대신 default.aspx로 리디렉션됩니다.

  • login.aspx
  • Default.aspx를
  • xxx.aspx

Default.aspx를 애플리케이션에 로그인 한 후에 표시된다. 사용자가 브라우저에서 URL을 직접 지정하여 http://server/xxx.aspx? Id = 1234를 열려고하면 로그인 화면이 표시되고 로그인 성공 후 시스템은 "http://server/"이 아닌 "default.aspx"로 리디렉션됩니다 xxx.aspx? Id = 1234 ". 실제로 내 시스템을 그렇게 부르는 외부 응용 프로그램이 있습니다. 그래서 왜 이런 일이 일어나는지 알려주세요. .NET 로그인 컨트롤은 응용 프로그램에 로그인하는 데 사용됩니다. 친절하게이 문제를 해결하도록 도와주세요.

감사합니다, 당신은 폼 인증을 사용하거나 응용 프로그램에서 직접이 일을하고 있습니까
중앙 빈

+0

"loggedin"루틴 및/또는 web.config에있는 인증을 게시 할 수 있습니까? –

답변

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로 이동하려고하면 "Login.aspx? ReturnUrl = xxx.aspx"와 같은 로그인 대화 상자의 URL이 표시됩니다.

1

DestinationPageUrl 속성을 설정하지 않는지 확인하십시오 로그인 컨트롤에서 :

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

실제로이 속성을 사용하면 사용자가 실제로 찾고있는 기본 동작을 재정의했다고 가정합니다.

관련 문제