Der von IIS 7.5 gehostete WCF-Dienst löst EndpointNotFoundException nur für große Anforderungen mit 404 aus

8

Ich habe einen WCF-REST-Service auf IIS 7.5 Windows 2008 R2 gehostet. Der Dienst funktioniert wie erwartet, außer wenn ein Client versucht, eine Nachricht größer als ~ 25 MB zu senden. Insbesondere beim Senden einer Nachrichtengröße von ~ 25 MB empfängt und verarbeitet der Dienst die Nachricht ordnungsgemäß, beim Senden einer Nachricht mit einer Größe von ~ 31 MB schlägt er fehl.

Wenn Sie lokal in VS 2010 gehostet werden, wird die Nachricht ohne Fehler empfangen. Bei der Remote-Bereitstellung in IIS 7.5 antwortet der Dienst sofort mit: "System.ServiceModel.EndpointNotFoundException: Es gab keinen Endpunkt bei ...", die innere Ausnahme ist: "Der Remote-Server hat einen Fehler zurückgegeben: (404) Not Found" .

Dies unterscheidet sich von der Ausnahme, die auftritt, wenn die Einstellung für die maximale Nachrichtengröße nicht ausreicht. Wenn ich davon ausgehe, dass wenn ich lokal gehostet werde, bekomme ich keinen Fehler, meine Vermutung ist, dass es etwas mit IIS oder vielleicht einigen Firewall-Einstellungen zu tun hat.

Dies ist die Konfiguration:

%Vor%     
eulerfx 18.07.2011, 17:49
quelle

2 Antworten

13

Es ist die maximale Uploadgröße von IIS, die Sie beißt. Der Standardwert ist 30 MB. Sie können es in web.config beheben:

%Vor%

Sie können es auch im IIS-Manager ändern, irgendwo in Request Filtering / Feature-Einstellungen . Der zu korrigierende Wert ist "Maximal erlaubte Inhaltslänge (Bytes)".

    
Codo 18.07.2011, 18:00
quelle
0

Sie können versuchen, Ihre maximalen Werte auf int max zu setzen, was 2147483648 ist. Außerhalb davon sollten Sie vielleicht den Upload oder das Streaming aufteilen.

    
BRaul 18.07.2011 17:59
quelle

Tags und Links