2013-04-12 3 views
0

URL 라우팅을 사용 중이며 내 URL은 다음과 같이 지역에서 작동합니다.URL 라우팅은 로컬 호스트에서만 작동합니다.

http://localhost:1545/ActivateUser/speu2mzi+TcVsO3NCQZtWAFX2lWecxotSfAOXu/1TEQ= 

하지만 다른 호스트에서는 작동하지 않습니다.

http://demo.callcenter.com/ActivateUser/speu2mzi+TcVsO3NCQZtWAFX2lWecxotSfAOXu/1TEQ= 

global.asax 파일 :

RouteTable.Routes.MapPageRoute("ActivateUser", "ActivateUser/{*code}", "~/Presentation/Site/ActivateUser.aspx"); 

사람이 문제가 무엇인지 알고 있나요?

+0

는 404 (아닌 500)를 얻을? –

+0

그러면 404 오류가 발생합니다. '+'문자를 제거하면 다시 작동합니다. –

답변

2

404 Error in IIS 7 when using a Url with a plus (+) sign in the path

1)의 system.webServer/보안에서 allowDoubleEscaping 속성을 설정하여 유효성 검사를 비활성화 할 수 있습니다 URL 경로에있는 "+"문자의 사용을 필요로하는 응용 프로그램/requestFiltering 에서 구성 섹션에서 응용 프로그램의 web.config. 그러나,이 악성 URL로 취약 응용 프로그램을 만들 수 있습니다

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

당신은 내 영웅입니다 :) 멋진 작품! –

관련 문제