[C#] http 오류 503 서비스를 사용할 수 없습니다. 웹 사이트에 액세스 할 때 앱 풀이 중지됨

이것에 대한 게시물 수가 많으며 지금까지 많은 것을 시도했습니다. 그러나 아무 소용이 없습니다. 나 자신은 기본적으로 Winforms 개발자이며 회사가 웹 이니셔티브를 시작하면서 며칠 전이 웹 작업을 시작했습니다.

ASP.Net 프로젝트가 있고 로컬 IIS에서 호스팅하고 싶습니다. 에서 Project properties -> Web설정 내가 선택 Use Local IIS Server하고 URL을 주었다 localhost/MyApp. 파이어 폭스 브라우저에서 액세스하려고 시도했지만 다음과 같은 오류가 발생했습니다.HTTP Error 503. The service is unavailable.

이전에는 다른 많은 오류가 있었고 하나씩 수정했습니다. 그러나 이것에 맞았다. 프로젝트에서 설정 한 내용입니다

  1. ASP.Net v4.0 Classic으로 설정된 응용 프로그램 풀
  2. 앱 풀 Enable 32 bit Application속성이 true
  3. 앱 풀이 시작되었습니다
  4. Any CPU대상 프레임 워크 에 대한 프로젝트 빌드 특성 세트

그러나 나는 이상한 행동을 언급하고 싶습니다. 다음은 내가 직면하고있는 것입니다.

  1. 응용 프로그램 풀이 시작되었습니다
  2. 로컬 웹 사이트에 액세스하려고합니다 (url을 localhost/MyApp).
  3. 나는 오류를 받는다 HTTP Error 503. The service is unavailable
  4. 응용 프로그램 풀이 중지되었습니다

다음 링크를 보았고 이미 시도했습니다. 위의 행동에 대해 나는 여기에 도달 했다 . 이 링크에 따르면 컴퓨터 이름에는 포함되지 않아야 .합니다. 나는 어떤이없는 .내 컴퓨터 이름이 아니라 있나요 -그 안에. 또한 내 도메인 이름에 포함 .되어 있습니다. 또한 내 사무실 랩톱 및 TFS 설정이 도메인 및 컴퓨터 이름에 바인딩되어 있으므로 이러한 설정을 변경할 수 없습니다.

아무도 무슨 일이 일어나고 있는지 이해하도록 도울 수 있습니까? 안내해주세요. 감사.

편집하다

에 다음 코드가 Global.asax있습니다. Application_BeginRequest동일한 파일에서 메소드가 비어 있습니다.

protected override void Application_Start(object sender, EventArgs e)
{
    base.Application_Start(sender, e);
    String _path = String.Concat(System.AppDomain.CurrentDomain.RelativeSearchPath, ";",
                                         System.Environment.GetEnvironmentVariable("PATH"));
    System.Environment.SetEnvironmentVariable("PATH", _path, EnvironmentVariableTarget.Process);
    MyAppLog.Initialize();
    MyAppLog.WriteMessage("Application Started");
}

최신 정보

의견의 제안에 따라 Cassini에서 웹 사이트를 실행할 수 있습니다.



답변

IIS의 응용 프로그램 풀이 일부 사용자 지정 계정으로 실행되도록 구성되어 있고이 계정이 없거나 잘못된 암호가 제공되었거나 암호가 변경 되었기 때문일 수 있습니다. 사용하는 계정에 대한 IIS의 응용 프로그램 풀의 고급 속성을 확인하십시오.

또한 이벤트 로그에는 첫 번째 요청에서 응용 프로그램 풀이 즉시 중지되는 이유에 대한 자세한 정보가 포함될 수 있습니다.

여기에 이미지 설명을 입력하십시오


답변

WINDOWS 10을 사용하고 최근에 Anniversary Update 패키지로 업데이트 한 경우 아래 단계를 따라야합니다.

  1. 확인 Windows Event Viewer-Win + R eventvwr을 누르고 다음을 입력 한 다음 Enter 키를 누릅니다.
  2. 왼쪽 Windows Event Viewer에서 Windows Logs-> 를 클릭하십시오 Application.
  3. 이제 IIS-W3SVC-WP중간 창에서 소스 에 대한 오류를 찾아야 합니다.
  4. 아마도 다음과 같은 메시지가 나타납니다.

모듈 DLL >> path-to-DLL <<을 (를) 불러 오지 못했습니다. 데이터가 오류입니다.

  1. Control Panel-> 로 이동하여 Program and Features로드 할 수없는 dll에 따라 다른 모듈을 복구해야합니다.
    • 대한 rewrite.dll– 찾을 IIS URL 재 작성 모듈 2를 클릭 Change->Repair
    • 대한 aspnetcore.dll– 찾을 마이크로 소프트 .NET 핵심 1.0.0 – VS 2015 공구를 … 클릭 Change-> Repair.
  2. 컴퓨터를 다시 시작하십시오.

답변

내 상황에서는 로그인 비밀번호가 변경되었지만 응용 프로그램 풀은 여전히 ​​이전 비밀번호를 사용합니다. 따라서 응용 프로그램 풀의 “고급 설정”을 클릭하고 “ID”를 재설정하십시오.


답변

나는 같은 문제에 직면하여 이벤트 로그를 사용하여 디버깅했습니다. 먼저 “소스 Microsoft-Windows-WAS의 이벤트 ID 5059에 대한 설명을 찾을 수 없습니다”라고 말했습니다.

그런 다음 Windows 기능 켜기 / 끄기를 사용하여 WAS를 켰습니다 . 그런 다음 eventvwr “Microsoft-Windows-DistributedCOM을 찾을 수 없습니다”에서 이것을 보았습니다.

마지막으로 웹 사이트 액세스를 중지하는 데 사용 된 App Pool을 포기하고 삭제하고 그대로 다시 만들었습니다. 문제가 해결되었습니다.


답변

Windows 10을 사용하고 기념일 업데이트로 업데이트 한 사람은이 링크를 확인하십시오.

https://orcharddojo.net/blog/troubleshooting-iis-apppool-crashes-status-503-after-windows-10-anniversary-update

링크가 중단되는 경우 : 이벤트 로그에 aspnetcore.dll, rewrite.dll (가장 자주 있지만 다른 것도있을 수 있음)이 표시되지 않으면 누락 된 항목을 복구해야합니다.

지금까지 두 가지 구체적인 문제와 해결 방법이 있지만 완전히 다른 문제가 발생할 수 있습니다.

"C:\WINDOWS\system32\inetsrv\rewrite.dll" (reference)
    Go to "Programs and Features" (Win+X, F) and repair "IIS URL Rewrite Module 2".
"C:\WINDOWS\system32\inetsrv\aspnetcore.dll" (reference)
    Go to "Programs and Features" (Win+X, F) and repair "Microsoft .NET Core 1.0.0 - VS 2015 Tooling ...".


답변

대부분의 경우 AppPool 설정으로 인해 발생했습니다.

이 문제를 해결하려면 다음을 확인하십시오.

  1. Apppool 서비스가 실행 중인지 확인하십시오.
  2. AppPool의 ID를 확인하십시오.
  3. 해당 ID로 변경된 새 비밀번호를 입력하십시오.

다음 이미지는 IIS에서 이러한 설정을 보여줍니다.

여기에 이미지 설명을 입력하십시오


답변

McAfee HIPS가 있고 이벤트 뷰어 응용 프로그램 로그에 다음 오류가 표시되는 경우 :

모듈 DLL C : \ Windows \ System32 \ inetsrv \ HipIISEngineStub.dll을로드하지 못했습니다.
데이터가 오류입니다.

그런 다음 다음과 같은 경우 내 문제를 해결했습니다.
https://kc.mcafee.com/corporate/index?page=content&id=KB72677&actp=LIST

페이지에서 인용 :

  1. 시작, 실행을 클릭하고 탐색기를 입력 한 후 확인을 클릭하십시오.
  2. % windir % \ system32 \ inetsrv \ config로 이동하십시오.
  3. 메모장에서 편집하기 위해 applicationHost.config 파일을 관리자로여십시오.
  4. <globalModules> 섹션을 편집하고 다음 행을 제거하십시오.

    <add name = “MfeEngine”image = “% windir % \ System32 \ inetsrv \ HipIISEngineStub.dll”/>

  5. <modules> 섹션을 편집하고 다음 줄을 제거하십시오.

    <add name = “MfeEngine”/>

  6. applicationHost.config 파일 편집을 완료 한 후 파일을 저장 한 다음 iisreset을 사용하거나 시스템을 다시 시작하여 IIS 서버를 다시 시작하십시오.