Niedawno utworzyłem usługę WCF, która działa dobrze podczas testowania z Visual Studio 2008. ale kiedy wdrażam projekt w IIS i próbuję uzyskać dostęp do pliku .svc z IIS, pojawia się ten błąd:
"Server Error in '/' Application.The resource cannot be found. "
Mam ten problem od 4 dni.
w Handler Mappings of IIS Manager widzę dwa wpisy dla .svc:
svc-Integrated and svc-ISAPI-2.0
Co mi pomogło, w systemie Windows 2012 Server R2:
Podziękowania dla „Aarona D”
źródło
dism /online /enable-feature /featurename:WCF-http-Activation45 /all
a takżedism /online /enable-feature /featurename:WCF-http-Activation /all
Znalazłem te instrukcje w poście na blogu, który wskazywał na ten krok, który zadziałał dla mnie (Windows 8, 64-bit):
źródło
Widzę, że już rozwiązałeś swój problem - ale dla potomności:
Mieliśmy podobny problem, a program obsługi SVC był już poprawnie zainstalowany. Nasz problem polegał na tym, że program obsługi ExtensionlessUrl przetwarzał żądania, zanim dotarły one do modułu obsługi SVC.
Aby to sprawdzić - w Mapach obsługi w Menedżerze usług IIS na poziomie serwera WWW wyświetl listę programów obsługi w kolejności (jest to opcja po prawej stronie). Jeśli różne programy obsługi ExtensionlessUrl pojawiają się nad programami obsługi SVC, kilkakrotnie przesuwaj je w dół, aż znajdą się na dole.
źródło
Sprawdza, czy katalog został przekonwertowany na aplikację, która jest usługą IIS.
źródło
Miałem dzisiaj ten sam problem.
Dla mnie rozwiązaniem było przejście do IIS, kliknięcie prawym przyciskiem myszy nowej nazwy witryny sieci Web, wybranie Właściwości, ASP.Net i zmiana wersji ASP.Net z „1.1.4322” (którą ustawiono jako domyślną) do 2.0.50727.
Gdy już to zrobiłem, mogłem kliknąć prawym przyciskiem myszy plik .svc, kliknąć „Przeglądaj” i wyświetlić przyjazną stronę serwisu.
źródło
Może to również stać się problemem po włączeniu zgodności zarządzania usługami IIS 6 w systemie Windows 10. Ustawienie aktywacji HTTP struktury w ramach usług WCF rozwiąże problem.
źródło
W moim przypadku błąd był spowodowany nieprawidłowymi ustawieniami mapowania w pliku applicationhost.config (\ System32 \ inetsrv \ config). Z jakiegoś powodu program Visual Studio 2013 uszkodził go podczas tworzenia katalogu wirtualnego w usługach IIS. Poprawka polegała na ręcznej edycji sekcji witryn w pliku.
źródło
Istnieją 2 wersje platformy .net dostępne w ramach funkcji dodawania roli / funkcji w serwerze 2012
za. 3.5
b. 4.5
W zależności od używanej struktury można włączyć aktywację HTTP w usługach WCF. :)
źródło
W moim przypadku Win 10. plik applicationHost.config jest uszkodzony przez VS 2012. I możesz pobrać kopię historii tego pliku w C: \ inetpub \ history. Następnie uruchom ponownie usługi IIS i działa poprawnie.
źródło
Musiałem dodać rozszerzenie .svc do dozwolonych rozszerzeń w ustawieniach filtrowania żądań (wcześniej otrzymałem błędy 404.7).
źródło
Dodanie sufiksu .svc, który jest dozwolony w filtrowaniu żądań, załatwiło sprawę.
źródło
Żadne z powyższych rozwiązań nie rozwiązało za mnie tego błędu. Musiałem ustawić w web.config:
<security mode="Transport"> <transport clientCredentialType="None" /> </security>
Chciałbym skorzystać z okazji i jeszcze raz PRZEKLĄĆ Microsoft za stworzenie tak ogromnego bałaganu w .NET Framework i utrudnianie życia programistom przez tak długi czas!
źródło