
asp.net 4.0 앱을 실행하는 두 대의 Windows 2008 R2 서버가 있습니다. 문제가 있는 서버는 실제로 asp.net 페이지를 제대로 로드하지만 ajax 호출이 있으면 작동하지 않습니다. 다른 서버와 마찬가지로 이 서버에 대한 IIS에는 .net 4.0 특정 처리기 매핑이 없다는 것을 알았습니다.
문자 그대로 모든 .net 4.0 매핑(.axd, .soap, .cshtm, .ashx 및 .aspx)이 누락되었습니다. "aspnet_regiis -ir"을 실행해 보았지만 도움이 되지 않았습니다. .net 4.0 프레임워크를 다시 설치해야 합니까? 누락된 매핑을 모두 수동으로 추가하시겠습니까? 또 무슨 일이 있는 걸까요?
내가 하고 싶지 않은 것은 web.config에 수많은 처리기를 추가하는 것입니다. 작동하는 서버에서는 필요하지 않으므로 손상된 서버에서는 필요하지 않습니다.
답변1
답변해 주셔서 감사합니다. 하지만 응용 프로그램 핸들러와 동일하고 .net 4 핸들러가 모두 누락된 루트 핸들러를 이미 확인했습니다.
문제 해결됨. 내가 해야 할 일은 %WinDir%\Microsoft.NET\Framework64\v4.0.30319에서 aspnet_regiis를 실행하는 것뿐이었습니다.
IIS 8에서는 "Windows 기능 켜기 및 끄기"로 이동하여 "인터넷 정보 서비스 > World Wide Web 서비스 > 응용 프로그램 개발 기능"으로 이동하여 "ASP.Net 3.5, ASP.Net 4.5 및 ISAPI 확장 및 필터"
답변2
뿌리인 것으로 밝혀졌습니다서버 노드IIS에는 적절한 핸들러가 모두 있었지만 어떤 이유로 문제의 웹 사이트(즉, 기본 웹 사이트) 핸들러가 없었습니다. 그냥 클릭했어요상속으로 되돌리기IIS의 오른쪽 탐색 메뉴에서핸들러 매핑섹션과 모든 것이 현재 잘 작동하고 있습니다.
답변3
"-i" 매개변수를 추가하는 것을 잊지 마세요!
C:\windows\system32>C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.
exe -i
Microsoft (R) ASP.NET RegIIS version 4.0.30319.17929
Administration utility to install and uninstall ASP.NET on the local machine.
Copyright (C) Microsoft Corporation. All rights reserved.
Start installing ASP.NET (4.0.30319.17929).
.............
Finished installing ASP.NET (4.0.30319.17929).
C:\windows\system32>
답변4
Windows Server 2019에서는 "역할 및 기능 추가" 마법사를 사용하여 "ASP.NET 4.7"과 마법사가 제안하는 모든 의존성 모듈을 설치해야 합니다. 이렇게 하면 IIS 내부의 모든 ASP.NET 모듈과 처리기가 활성화됩니다.