ASP.NET 응용 프로그램을 배포하려고합니다. 사이트를 IIS에 배포했지만 브라우저를 사용하여 사이트를 방문하면 다음과 같이 표시됩니다.
서버 오류
500 내부 서버 오류.
찾고있는 리소스에 문제가있어 표시 할 수 없습니다.
web.config로 둘러 본 후 나는
내부 서버 오류가 발생하여 페이지를 표시 할 수 없습니다.
이 서버 오류의 실제 문제를 어떻게 확인할 수 있습니까?
답변
먼저 웹 메시지의 자세한 오류를 활성화하고 확인해야 합니다. 이는 보안상의 이유로 실제로 발생하는 정보를 제공하지 않는 일반적인 메시지이므로 웹 메시지의 자세한 오류 를 확인해야합니다.
자세한 오류가 있으면 여기에서 실제 문제를 찾을 수 있습니다.
또한 서버에서 브라우저를 실행할 수있는 경우 서버는 사용자가 로컬임을 인식하여 사용자에게 표시하므로 오류에 대한 세부 사항을 얻습니다. 또는 이벤트 뷰어를 사용하여 서버 의 로그 를 읽을 수있는 경우 오류 세부 사항도 볼 수 있습니다.
에 IIS 6
<configuration>
<system.web>
<customErrors mode="Off"/>
<compilation debug="true"/>
</system.web>
</configuration>
IIS 7에서
<configuration>
<system.webServer>
<httpErrors errorMode="Detailed" />
<asp scriptErrorSentToBrowser="true"/>
</system.webServer>
<system.web>
<customErrors mode="Off"/>
<compilation debug="true"/>
</system.web>
</configuration>
참고 : Debug = true를 피할 수 있습니다 . 잠시 동안 사용자 지정 오류 만 닫고 자세한 오류 페이지를 가져와야합니다.
참조 : Go Daddy의 도움말 에서 Windows 사용자 지정 오류 메시지 활성화
또한, 이것은 도움이 될 수 있습니다 : (IIS로부터) 자세한 오류 메시지를 활성화하는 방법 .
답변
나는이 문제에 대해 머리카락을 뽑고있었습니다. 루트 web.config
파일 에 다음 항목이 있는지 확인하십시오 .
<configuration>
<system.webServer>
<validation validateIntegratedModeConfiguration="false" />
</system.webServer>
</configuration>
기존 XML 요소가 이미있는 경우이를 추가해야합니다 . 요소의 여러 사본을 가질 수 없으므로 파일 끝에 추가 할 수 없습니다.
답변
나에게 web.config의 다음 코드가 범인이었습니다. 그것을 제거했을 때 웹 사이트는 잘 작동했습니다.
<staticContent>
<mimeMap fileExtension=".mp4" mimeType="video/mp4" />
</staticContent>
답변
godaddy.ocm 공유 호스팅에 ASP.NET MVC 3.0 응용 프로그램을 배포 할 때이 “500 Internal server”오류를 마침내 해결했습니다.
어떻게 든 참조 된 DLL 파일 버전과 file에 언급 된 버전에 불일치가있었습니다 web.config
.
다양한 포럼에서 언급 한 모든 옵션을 시도했습니다. 모든 사람이 같은 종류의 수정을 제안했지만 도움이되지는 않았지만 어떻게 든 내 시나리오에서는 작동하지 않았습니다. 마침내 이틀 동안 내 머리를 두드리다. 모든 DLL 파일 참조를 삭제하고 프로젝트에서 web.cofig (로컬 복사본 만들기)를 삭제하고 응용 프로그램에서 오류를 throw 한 다음 DLL 파일을 하나씩 로컬 = true로 복사하여 추가하기로 결정했습니다.
모든 DLL 파일을 추가 한 후 새 ASP.NET MVC 응용 프로그램을 만들고 새 응용 프로그램의 web.config를 실제 응용 프로그램에 복사했습니다. 따라서 실제 응용 프로그램에 새로운 web.config가 생겼으며 저장 한 web.config의 로컬 복사본에서 연결 문자열 및 기타 참조를 복사했습니다.
방금 응용 프로그램을 컴파일하고 로컬 폴더에 게시하고 게시 된 폴더를 FTP로 goDaddy에 게시했습니다.
그것은 효과가 있었고 마침내 내 문제가 해결되었습니다.
답변
제 경우에는 제 web.config
파일에 실수를했습니다 . 애플리케이션 키는 어떻게 든 <appSettings> 태그 아래에 있습니다. 그러나 왜 구성 오류가 표시되지 않는지 궁금합니다. 오류 500은 문제를 조사하기에는 너무 일반적입니다.
답변
HTML 만 제공하는 매우 간단한 사이트를 게시 한 다음 실행하려는 첫 번째 시도는 “내부 서버 오류가 발생하여 페이지를 표시 할 수 없습니다.”
문제 : Visual Studio에서 사이트를 .NET 3.5로 설정했지만 (웹 사이트 프로젝트-> 속성 페이지-> 빌드를 마우스 오른쪽 버튼으로 클릭) Azure의 웹 사이트를 .NET 4.0으로 구성했습니다. 죄송합니다! Azure에서는 3.5로 변경했으며 작동했습니다.
답변
다른 제안을뿐만 아니라, 변경 확인 existingResponse
의 속성 httpErrors
에 노드 Auto
에서 Replace
, 또는 완전히 그 속성을 제거 할 수 있습니다.
<httpErrors existingResponse="Replace" />
^^^^^^^ not going to work with this here