2011-01-03 5 views
0

SSL 뒤에 IIS 7에서 실행되는 ASP.NET 웹 양식 사이트에서 Response.Redirect가 제대로 작동하는 데 문제가 있습니다. 리디렉션 경로가 현재 경로에 추가되어 어떤 구성에서 문제가 발생하는지 확인할 수 없습니다.Response.Redirect가 잘못된 형식의 상대 경로가되었습니다.

내 실행 코드는 다음과 같습니다

string baseUrl = Request.Url.Scheme + "://" + Request.Url.Authority + Request.ApplicationPath.TrimEnd('/') + '/'; 
Response.Redirect(Server.UrlEncode(baseUrl + "Default.aspx"), true); 
내 Web.config의의

관련 부분은 다음과 같습니다 UI가/​​양식 디렉토리에서 실행

<system.webServer> 
    <security> 
     <requestFiltering allowDoubleEscaping="true" /> 

    and 

<httpRuntime useFullyQualifiedRedirectUrl="true" requestPathInvalidCharacters="" /> 

,이 https://mysite.edu/Ui/Forms/https%3a%2f%2fmysite.edu%2fUi%2fForms%2fhttps%253a%2f%2fmysite.edu%2fDefaul.aspx

하나를 얻을 구성 포인터 또는 링크가 유용합니다. 감사.

답변

0

나는 내 자신의 대답을 발견하고 퍼즐의 핵심 부분을 언급하는 것을 잊어 버렸다. 위의 코드를 실행하는 버튼은 UpdatePanel에 있었고 해당 버튼의 업데이트 패널에 PostBackTrigger를 추가하는 것을 잊었습니다. 그러면 Response.Redirect가 작동합니다.

<Triggers> 
    <asp:PostBackTrigger ControlID="btnSubmit" /> 
</Triggers> 
관련 문제