Windows 8 컴퓨터의 IIS에서 WCF 서비스를 제공하려고하면 잘 알려진 오류가 발생합니다.
확장 구성으로 인해 요청한 페이지를 제공 할 수 없습니다. 페이지가 스크립트 인 경우 핸들러를 추가하십시오. 파일을 다운로드해야하는 경우 MIME 맵을 추가하십시오.
이전 해결 방법은 실행 aspnet_regiis -i
했지만이 명령은 Windows 8에서 더 이상 사용되지 않아 응답을하지 않는 것 같습니다 This option is not supported on this version of the operating system. (...)
.
해결 방법은 무엇입니까?
(정규 aspx
페이지를 이미 활성화 했으므로 대부분의 IIS 구성이 정상으로 보입니다.)
답변
더 똑똑하지 않은 것처럼 보였습니다. Programs and Features -> Turn Windows features on or off
제어판에서 WCF 서비스를 사용하도록 설정해야합니다 . 이 블로그 게시물 mdsn에 설명 된대로 이동하여 .NET Framework Advanced Services -> WCF Services
활성화 하십시오 .HTTP Activation
명령 프롬프트 (admin으로)에서 다음을 실행할 수 있습니다.
C:\> DISM /Online /Enable-Feature /FeatureName:WCF-HTTP-Activation
C:\> DISM /Online /Enable-Feature /FeatureName:WCF-HTTP-Activation45
오류가 발생하면 아래를 사용하십시오
C:\> DISM /Online /Enable-Feature /all /FeatureName:WCF-HTTP-Activation
C:\> DISM /Online /Enable-Feature /all /FeatureName:WCF-HTTP-Activation45
답변
Windows Server 2012의 경우 솔루션은 faester와 매우 유사합니다 (위 참조). 서버 관리자에서을 클릭 Add roles and features
하고 적절한 서버를 선택한 다음을 선택하십시오 Features
. 아래 .NET Framework 4.5 Features
에이 표시 WCF Services
되고 그 아래 에이 표시 HTTP Activation
됩니다.
답변
IIS 8.0에서 다음 두 단계를 수행하십시오.
새로운 MIME 유형 및 HttpHandler 추가
-
확장자 : .svc, MIME 유형 : application / octet-stream
-
요청 경로 : * .svc, 유형 : System.ServiceModel.Activation.HttpHandler, 이름 : svc-Integrated
답변
답변
이것은 실제로 faester의 솔루션과 Bill Moon의 솔루션과 동일한 솔루션이지만 PowerShell을 사용하여 수행하는 방법은 다음과 같습니다.
Import-Module Servermanager
Add-WindowsFeature AS-HTTP-Activation
물론 DISM
PowerShell에서도 전화 를 걸 수 있습니다.
답변
이 코드를 ASP MVC의 web.config에 추가 할 수 있습니다
<system.webServer>
<staticContent>
<remove fileExtension=".srt" />
<mimeMap fileExtension=".srt" mimeType="text/srt" />
<remove fileExtension=".vtt" />
<mimeMap fileExtension=".vtt" mimeType="text/vtt" />
</staticContent>
</system.webServer>
파일 확장자를 사용하여 파일 확장자를 변경할 수 있습니다