web.config httpErrors
섹션을 사용하여 구성된 사용자 지정 오류 페이지가있는 .Net 웹 사이트가 있습니다.
<httpErrors errorMode="Custom" existingResponse="Replace">
<clear/>
<error statusCode="400" path="/page-not-found/" responseMode="ExecuteURL" />
<error statusCode="404" path="/page-not-found/" responseMode="ExecuteURL" />
<error statusCode="500" path="/error/" responseMode="ExecuteURL" />
</httpErrors>
과
<httpRuntime requestValidationMode="2.0" targetFramework="4.5" />
http://www.example.com/<
사이트를 방문 하면 올바른 "페이지를 찾을 수 없음"페이지 http://www.example.com/<a
가 표시 되지만 방문 하면 500 상태 코드 응답 헤더와 함께 YSOD가 표시됩니다.
Elmah가 연결되어 있고 두 URL 모두 정확히 동일한 오류가 발생합니다. System.Web.HttpException: A potentially dangerous Request.Path value was detected from the client (<).
하지만 두 URL이 동일하게 처리되지 않는 이유는 무엇입니까? 하나는 내 사용자 지정 오류 페이지에 다시 작성되고 다른 하나는 다시 작성되지 않는 이유는 무엇입니까? 모든 예외에서 동일한 동작을 기대합니다.
편집하다:
나는 이것이 Umbraco 프로젝트라고 미리 언급 했어야했다. 나는 이것이 기여 요인이 아니라고 생각했지만 종속성이없는 베어 본 .Net 프로젝트를 만들었고 예상대로 작동했습니다. 즉, 두 URL 모두 httpErrors 구성을 따랐습니다. 따라서 이것은 Umbraco 고유의 것이어야합니다. 아마도 모듈 일 것입니다.
상당한 양을 파고 나면 이것이 실제로 ClientDependency 라는 타사 모듈에 의해 발생 했음을 알 수 있습니다. 이 제거 및 정상적인 동작이 반환되었지만 분명히이 경우 백 오피스가 제대로 작동하지 않습니다.
프로젝트에 대한 패치가 필요하며 이것을 제출했습니다.
최신 정보:
ClientDependency의이 버그는 v1.8.3에서 수정되었습니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다