2013-11-28 7 views
0

내 asp.net C# 웹 응용 프로그램에서 코드에서이 예외가 정확히 어디에서 찾을 수없는 경우 (잘못된 URI : URI 형식을 사용할 수 없습니다. 결정된다.). 문제는 URL의 구조와 관련된 경우를 제외하고는 오는 URL은잘못된 URI : URI 형식을 확인할 수 없습니다. 예외

http://somedomain.com/sepsisvte/sepsis.aspx?4040431page=2

아래와 같은 형식이며 다음 어디 모든

에서 예외를받지 못했습니다 다음과 같은 URL이 있습니다

http://somedomain.com/sepsisvte/sepsis.aspx?4020894page=2 http://somedomain.com/sepsisvte/sepsis.aspx?4020894page=3

그것의 아주 큰 응용 프로그램 및 오류의 출처를 찾기 위해 정말 어렵습니다. 어떤 아이디어?

스택 트레이스는

아래와 같이이다 : 잘못된 URI : UriFormatException. URI의 형식 판정 할 수 없었던] System.Uri.CreateThis (문자열 URI 부울 dontEscape, UriKind uriKind) + 5462488 System.Uri..ctor (문자열 uriString) +20
umbraco.presentation.requestModule.rewrite404Url (문자열 URL, 문자열 쿼리 문자열, 부울 returnQuery) 265
umbraco.presentation.requestModule.Application_BeginRequest (객체 보낸 사람, EventArgs입니다 e) +237
System.Web.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +68 (IExecutionStep 단계, 부울 & completedSynchronously) +75

+1

그 *는 * URI 생성자에 대한 유효한 입력 문자열입니다. 예외를 던지는 URI를 ** 확실하게 ** 있습니까? 예외가 발생하는 코드에서 * *를 찾을 수없는 이유는 무엇입니까? 스택 트레이스가 없습니까? – Snixtor

+0

@Snixtor 예외에서 스택 추적을 추가했습니다. 이 페이지 (http://somedomain.com/sepsisvte/sepsis.aspx?4040431page=2)로 연결되는 앵커 요소가 있습니다. 클릭하면 위의 오류가 발생합니다. 덕분에 – rumi

+0

그것은 아마 당신의 umbraco 설정에있는 거짓말처럼 보이게합니다. – Snixtor

답변

1

귀하의 URL이 포함되어 있기 때문에 이 "404". Umbraco는이 텍스트에 대한 각 URL을 검색하고 URL이 있으면 URL을 다시 씁니다. 여기에서 소스 코드를 확인하십시오 : https://searchcode.com/codesearch/view/28576630/,이 방법을 찾으십시오 : rewrite404Url.

해결 방법 중 하나는 쿼리 문자열 키의 밑줄을 접두어로 사용하는 것입니다.

관련 문제