2013-11-24 3 views
12

IIS 8.5를 실행하는 새로운 Windows 2012 R2 서버를 설치했습니다.IIS 8.5 (win 2012 R2)에서 asp.net 오류에 대해 "200 OK"로 빈 페이지가 제공되는 이유는 무엇입니까?

우리는 500 상태 코드 오류 화면을 출력하는 대신 오류가 발생하면 (예 : ASP.NET 상태 서비스가 실행되지 않음) 요청이 완전히 빈 페이지를 반환한다는 것을 알아 냈습니다 (내용이없는 헤더 만) . 우리는 분명히 오류를보고 200 오류 메시지를 제공하면 Google 등의 인덱서 또는 wesite 모니터링 도구 (사이트가 오프라인 상태 였음을 알리지 않음)에 매우 문제가 될 수 있습니다.

다른 서버 (IIS 7)에서는 "노랑색 오류 화면"에 "상태 서버에 연결할 수 없습니다"와 비슷한 메시지가 표시됩니다.

무엇이 잘못되었을 수 있습니까? globablly 모든 오류를 비활성화하는 몇 가지 설정이 있습니까 (하지만 200 상태 코드도 제공하는 경우이 방법은 어리석은 일입니다).

간섭을 일으킬 수있는 또 다른 유일한 문제는 서버에 ISAPI_Rewrite가 설치되어 있다는 것입니다.하지만이 문제는 일반적으로 발생하지 않습니다.

감사합니다.

+1

오류 페이지 설정을 확인하고 다시 쓰기 모듈을 테스트로 사용하지 않도록 설정하십시오. –

+0

IIS에서 실패한 요청 추적 도구를 사용하여 문제가 발생한 위치와 문제의 원인에 대해 자세히 알아보십시오. – TonyCool

+0

비슷한 문제가있어서 기본 설치에 포함되지 않은 'HTTP 리디렉션'모듈을 설치하여 해결했습니다. – gordy

답변

20

Windows 8에서 비슷한 문제가 발생했습니다.

설정에서 "Windows 기능 사용/사용 안 함"을 검색하십시오. 다음과 같은 기능이

를 사용할 수 있는지

확인 "/ 인터넷 정보 서비스/월드 와이드 웹 서비스/공통 HTTP 기능/HTTP 오류". "/ 인터넷 정보 서비스/웹 서비스/일반 HTTP 기능/정적 콘텐츠".

+0

로컬 .net 웹 사이트 개발에 대해서도 확인하십시오. "/ 인터넷 정보 서비스/월드 와이드 웹 서비스/응용 프로그램 개발 기능 /ASP.Net 3.5 "및"/ 인터넷 정보 서비스/월드 와이드 웹 서비스/응용 프로그램 개발 기능/ASP.Net 4.5 " – Adam

+0

8.1에서 업그레이드 한 후 Win10에서 나에게도 동일한 문제가 발생했습니다. 고맙습니다. –

+0

바이러스 백신이이 문제에 영향을 줍니까? 내가 언급 한 모든 기능을 설치했지만 여전히이 오류가 발생하기 때문에 500-19 –

4

서버 모듈 디버깅이 ASP 모듈에서 활성화되어 있지 않아야합니다.

기본 ASP 서버 500 오류는 200으로 반환됩니다. 서버 측 디버그 응용 프로그램을 열려고 시도하면 IIS를 찾을 수 없으며 IIS는 200 응답과 빈 페이지를 반환합니다.

3

모든 Global.asax 코드를 추출하면 오류의 원인을 찾을 수있었습니다.

그 후 IIS는 예상대로 오류 페이지를 반환하기 시작했습니다. 그런 다음 수정 프로그램을 적용한 후 Global.asax 코드를 반환했습니다.

이 경우 도움이 될 수 있습니다.

+0

이것은 사용자 정의 오류 처리에서 오류를 찾는 좋은 방법입니다. 당신이 이것을 구현했다면. – DeadlyChambers

+0

이것은 나를 위해 일했습니다! –

+0

완벽한 ... 이것은 _actual_ 오류 –

3

내 문제인 Global.asax.cs의 Application_Error에서 Server.ClearError()를 호출하지 않았는지 확인하십시오.

+1

을 추적 할 수있게 해주었습니다. 그것이 나를 도와 준 덕분입니다. – JJP

1

Default.aspx (디렉토리의 페이지 기본값으로 설정)를 요청할 때 비슷한 문제가 발생했습니다. 서버가 상태 200을 반환했지만 컨텐츠가 비어 있습니다.

이 경우 응용 프로그램 풀의 관리 파이프 라인 모드를 통합에서 클래식으로 전환하는 데 사용됩니다.