verybigm
Goto Top

ASP.Net Core-Applikationen erzeugen im IIS http-Fehler 405

Problem:
Beim Deployment einer mit ASP.Net Core 2.0 entwickelten Anwendung auf einen Liveserver schien zuerst alles gut zu funktionieren. Schnell stellte sich heraus, dass einige Funktionen einen http-Fehler 405 erzeugten. Das http-Verb war also nicht erlaubt. Tatsächlich nutzt die Applikation nicht nur die Verben GET und POST, sondern auch die Verben PUT und DELETE.

Im Internet Information Server war aber weder im serverweiten noch im applikationsbezogenen Anforderungsfilter entsprechende Einträge konfiguriert.

Es stellte sich heraus, dass das WebDAV-Modul dafür verantwortlich zeichnet. Die üblichen Empfehlungen, das WebDAV-Modul zu deinstallieren oder zu deaktivieren, kamen für mich nicht in Frage, zumal eine einfache WebDAV-Deaktivierung die Verbenfilterung offensichtlich nicht abschaltet.

Die Lösung:

Zumindest im IIS >= 8 lässt sich dieser Filter einzeln deaktivieren, ohne das ganze WebDAV-Modul deinstallieren zu müssen.

Im Modul WebDAV-Erstellungsregeln im Menü auf der rechten Seite unter Aktionen die WebDAV-Eigenschaften aufrufen und dort den Eintrag Verbenfilterung zulassen auf false setzen.

iis-webdav-verbfilter

Da alle Applikationen, unabhängig davon ob ASP.NET oder ASP.NET Core eingesetzt wird, prinzipiell auch andere Verben als GET und PUT nutzen können, wird das Problem also auch in anderen IIS-Deployment-Szenarien auftreten.

Content-ID: 353486

Url: https://administrator.de/contentid/353486

Ausgedruckt am: 21.11.2024 um 15:11 Uhr