wake-up-neo.net

HTTP 404 beim Zugriff auf die .svc-Datei in IIS

Ich habe kürzlich einen WCF-Dienst erstellt, der beim Testen von Visual Studio 2008 einwandfrei funktioniert. Wenn ich jedoch das Projekt auf IIS bereitstellen und versuchen möchte, auf die .svc-Datei von IIS zuzugreifen, erhalte ich diesen Fehler

"Server Error in '/' Application.The resource cannot be found.  "

Ich habe diese Ausgabe für die letzten 4 Tage gehabt.

in den Handler-Mappings von IIS Manager kann ich zwei Einträge für .svc sehen:

svc-Integrated and svc-ISAPI-2.0
65
Attilah

Sie müssen ASP.NET eine Zuordnung für die SVC-Erweiterung hinzufügen. Am einfachsten ist es, ServiceModelReg.exe -i unter C:\Windows\Microsoft.NET\Framework\v3.0\Windows Communication Foundation auszuführen. Sie müssen möglicherweise auch ASP.NET aktivieren, wenn Sie dies noch nicht getan haben.


Wenn Sie Windows Server 2012 oder 2016 verwenden, befolgen Sie stattdessen die folgenden Anweisungen:

64
tvanfosson

Was für mich funktionierte, unter Windows 2012 Server R2:

 WCF HTTP 404

Danke geht an "Aaron D"

77
Stefan Michev

Ich habe diese Anweisungen in einem Blogbeitrag gefunden , die auf diesen Schritt hinweisen, der für mich funktionierte (Windows 8, 64-Bit):

Stellen Sie sicher, dass in Windows-Features beide WCF-Optionen unter .Net Framework aktiviert sind. Gehen Sie zu Systemsteuerung -> Programme und Funktionen -> Windows-Funktionen ein-/ausschalten -> Funktionen -> Funktionen hinzufügen -> .NET Framework X.X-Funktionen. Vergewissern Sie sich, dass .Net Framework angegeben ist, dass es installiert ist, und stellen Sie sicher, dass der darunter liegende WCF-Aktivierungsknoten ausgewählt ist (Kontrollkästchen aktiviert) und beide Optionen unter WCF-Aktivierung ebenfalls aktiviert sind.
Dies sind: 
 * HTTP-Aktivierung 
 * Nicht-HTTP-Aktivierung 
 Beide Optionen müssen ausgewählt werden (markiertes Kästchen).
49
Aaron D

Ich sehe, du hast dein Problem bereits gelöst - aber für die Nachwelt:

Wir hatten ein ähnliches Problem und der SVC-Handler wurde bereits korrekt installiert. Unser Problem war der ExtensionlessUrl-Handler, der Anforderungen verarbeitet, bevor sie den SVC-Handler erreichten.

Um dies zu überprüfen, zeigen Sie in Handler-Mappings im IIS Manager auf Webserver-Ebene die Liste der Handler an (die Option befindet sich rechts). Wenn die verschiedenen ExtensionlessUrl-Handler über den SVC-Handlern angezeigt werden, verschieben Sie sie wiederholt nach unten, bis sie ganz unten sind.

4
Inigo Surguy

Stellt sicher, dass Ihr Verzeichnis in eine Anwendung konvertiert wurde, die Ihr IIS ist.

1
esylvestre

Ich hatte heute das gleiche Problem.

Für mich bestand die Lösung darin, in IIS zu gehen, mit der rechten Maustaste auf den neuen Website-Namen zu klicken, Eigenschaften, ASP.Net auszuwählen und die ASP.Net-Version von "1.1.4322" (die als Standard festgelegt wurde) zu ändern bis 2.0.50727.

Danach konnte ich mit der rechten Maustaste auf die .svc-Datei klicken, auf "Durchsuchen" klicken und die freundliche Service-Webseite sehen.

1
Mike Gledhill

Dies kann auch zu einem Problem werden, nachdem IIS 6 Management Compatibility in Windows 10 aktiviert wurde. Durch Festlegen der HTTP-Aktivierung des Frameworks unter WCF Services wird das Problem behoben.

1
Al Nolan

In meinem Fall Win 10. ist die Datei applicationHost.config von VS 2012 beschädigt. Die Kopie dieser Datei können Sie unter C:\inetpub\history kopieren. Starten Sie dann IIS neu und es funktioniert ordnungsgemäß.

0
phuongdnguyen

Es gibt 2 .net-Framework-Versionen, die unter Funktionen unter Hinzufügen von Rollen/Features in Server 2012 angegeben sind

ein. 3,5

b. 4,5

Je nach verwendetem Framework können Sie HTTP-Activation unter WCF-Services aktivieren. :)

0
Raj kumar

In meinem Fall wurde der Fehler durch falsche Mapping-Einstellungen in der Datei applicationhost.config (\ System32\inetsrv\config) verursacht. Aus irgendeinem Grund hat Visual Studio 2013 es beim Erstellen eines virtuellen Verzeichnisses in IIS beschädigt. Das Update bestand darin, den Site-Abschnitt in der Datei manuell zu bearbeiten. 

0
user405723

Ich musste die Erweiterung .svc zu den erlaubten Erweiterungen in den Anforderungsfilterungseinstellungen hinzufügen (erhielt zuvor 404.7 Fehler).

 enter image description here

0
martinoss