IIS가 ASP.NET 콘텐츠 제공을 거부하는 이유는 무엇입니까?


16

내 Windows Server 2003 표준 서버가 ASP.NET 콘텐츠 서버를 거부합니다. 그것은 정규 html을 잘 제공하지만 .net, ASPX 확장자가있는 한 줄 html 파일조차도 자동으로 실패합니다.

내가 시도한 것 :

  • 실패하면 이벤트 로그 또는 IIS WWW 로그에 아무것도 없습니다.
  • 피들러가 응답하지 않음
  • .NET을 다시 설치했습니다.
    • C : \ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727> aspnet_regiis.exe -U
    • C : \ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727> aspnet_regiis.exe -I
  • 모든 관련 사용자 (IUSER *, ASP.NET 등)에게 내가 생각할 수있는 모든 것 (모든 권한, 읽기, 쓰기 등)에 대해 외설적으로 높은 권한을 부여합니다.
  • IIS에서 ASP.Net v1 및 v2 웹 서비스 확장이 "허용"되었음을 확인했습니다.
  • 서버 관리자에 IIS 및 ASP.Net 역할이 활성화되어 있는지 확인

다시 : 이것은 시나리오입니다.

어떤 안내라도 대단히 감사하겠습니다!


솔루션 : 아래 지침에 따라 다시 설치했으며 이제 작동합니다. 모두 감사합니다!

답변:


23

나는이 정확한 문제를 여러 번 겪었고 매번 해결책은 다음과 같습니다.

  1. 제어판으로 이동
  2. "Windows 구성 요소"영역으로 이동
  3. IIS를 제거하고 제거하십시오.
  4. 재부팅
  5. IIS를 다시 추가 하십시오 ( 확인란을 선택하면 ASP.NET 항목을 포함해야합니다 ).
  6. 실행 : C : \ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727> aspnet_regiis.exe -I

나는 이것을 클라이언트 사이트에서 한 번 디버깅하는데 몇 시간을 보냈다. 그 이후로, 이런 일이 발생할 때마다이 문제가 해결되었습니다.

근본 원인이 무엇인지 확실하지 않지만 IIS 구성을 파악하려고 시도한 후에는 IIS 구성을 찢어 버렸으며 Microsoft RDC가 해당 서버에 2 ~ 3 시간 동안 접속하여도 도움이되지 못했습니다. .

따라서 ASP.NET/IIS에서 문서화되지 않은 버그로 작성했습니다.


1
그랬어. Soooo는 불만족스러운 해결책으로 많은 시간을 낭비했습니다. 실제 원인을 알지 못합니다. 잘 지내고 있습니다. 감사합니다, 샘!
Michael Haren

2
6 단계 : C : \ WINDOWS \ Microsoft.NET \ 프레임 워크 \ V2.0.50727> 다음 aspnet_regiis.exe -I
마이클 하렌

문제 없습니다-봉사하게되어 기쁩니다. 이것이 고통스러운 일이라는 것을 알기 때문입니다!
Sam Schutte

또한 실제 원인은 단순히 잘못된 설치 일 수 있습니다. 이 문제가 발생하면 다른 모든 것이 잘 보이지만 레지스트리 또는 구성이 어딘가에 문제가 있다고 가정합니다.
Sam Schutte

플래그가 대문자 'i'임을 쉽게 알 수 있도록 6 단계에서 명령 형식을 코드로 지정하는 것이 좋습니다.
Dave Andersen 님이

9

이것을 시도하십시오 : http : //localhost/blah.aspx (존재하지 않는 페이지 여야 함). asp.net 오류 페이지 대신 404가 발생하면 asp.net이 실행되고 있지 않은 것입니다. 403 오류가 발생하면 사이트에 대한 권한이 잘못되었습니다.

도움이 될 수있는 점검 목록은 다음과 같습니다.

  • IIS가 실행 중입니까?
  • 귀하의 웹 사이트가 운영되고 있습니까?
  • 웹 사이트의 앱 풀이 올바르게 작동합니까?
  • ASP.NET이 설치 및 등록 되었습니까?

    cd / d % windir % \ Microsoft.Net \ Framework \ v2.0.50727

    aspnet_regiis -ua

    aspnet_regiis -i-사용

  • ASP.NET이 실행 중입니까?

웹 사이트 속성에서 "ASP.NET"탭을 확인하십시오. 올바른 버전을 사용하고 있는지 확인하십시오.

  • 권한이 올바르게 설정 되었습니까?

사이트 속성에서 "홈 디렉토리"탭을 확인하고 "권한 실행"설정을 확인하십시오. 스크립트를 허용하도록 설정되어 있어야합니다. 또한 "웹 서비스 확장"을 확인하여 asp.net을 실행할 수 있는지 확인하십시오.


나중에 참조 할 수있는 좋은 목록입니다. -a 및 -enable 스위치와 blah.aspx 아이디어를 제외한 모든 것을 이미 시도했습니다. IIS를 다시 설치하는 것이 그랬습니다. 도와 주셔서 감사합니다!
Michael Haren

올바르게 실행되는 앱 풀은 어떻게 생겼습니까? 잘못 실행되는 앱 풀은 어떻게 생겼습니까?
Ian Boyd

asp.net이 실행되도록하기 위해 "웹 서비스 확장"을 어디에서 찾을 수 있습니까?
Ian Boyd

3

IIS 관리자를 열고 왼쪽 창에서 웹 서비스 확장 폴더를 클릭하십시오. 그런 다음 오른쪽 창에서 ASP.NET 확장을 클릭하고 허용 버튼을 클릭하십시오.


그래도 제안에 감사합니다
Michael Haren

2

이전 답변에 따라 .net 지원을 다시 설정하기 위해 IIS를 제거 / 재설치 할 필요가 없습니다. 적절한 framwork 폴더에있는 aspnet_regiis.exe 유틸리티를 실행하십시오. 예 :

C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727

내 질문에 명시된 것과 다르게 이것을합니까? 그렇지 않다면 이미 시도했습니다.
Michael Haren

어떤 이유로 든 regiis를 실행해도 도움이되지 않습니다.
Sam Schutte
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.