
Ich habe zwei Windows 2008 R2-Server, auf denen eine asp.net 4.0-App läuft. Der Server, der Probleme hat, lädt asp.net-Seiten eigentlich problemlos, aber wenn es Ajax-Aufrufe gibt, funktionieren sie nicht. Mir ist aufgefallen, dass es für diesen Server keine .net 4.0-spezifischen Handler-Mappings in IIS gibt, wie für den anderen Server.
Es fehlen buchstäblich alle .net 4.0-Zuordnungen (.axd, .soap, .cshtm, .ashx und sogar .aspx). Ich habe versucht, „aspnet_regiis -ir“ auszuführen, aber das hat nicht geholfen. Soll ich das .net 4.0-Framework neu installieren? Alle diese fehlenden Zuordnungen manuell hinzufügen? Ist da noch etwas anderes los?
Ich möchte auf keinen Fall eine Menge Handler zu einer Web-Konfiguration hinzufügen. Sie werden auf dem funktionierenden Server nicht benötigt und sollten daher auf dem defekten Server auch nicht nötig sein.
Antwort1
Vielen Dank für Ihre Antwort, aber ich habe bereits die Root-Handler überprüft, die mit den Anwendungshandlern identisch sind, und es fehlen alle .net 4-Handler.
Problem gelöst. Ich musste lediglich aspnet_regiis in %WinDir%\Microsoft.NET\Framework64\v4.0.30319 ausführen.
In IIS 8 müssen wir zu „Windows-Funktionen ein- und ausschalten“ gehen und dann zu „Internetinformationsdienste > World Wide Web Services > Anwendungsentwicklungsfunktionen“ gehen und „ASP.Net 3.5, ASP.Net 4.5 und ISAPI-Erweiterungen und -Filter“ auswählen.
Antwort2
Es stellt sich heraus, dass die WurzelServerknotenin IIS hatte alle entsprechenden Handler, aber aus irgendeinem Grund die betreffende Website (dh Standard-Website) hatte die Handler nicht. Ich habe einfach geklicktAuf Vererbtes zurücksetzenim rechten Navigationsbereich von IIS imHandlerzuordnungenAbschnitt und jetzt funktioniert alles gut.
Antwort3
Vergessen Sie nicht, den Parameter "-i" hinzuzufügen!
C:\windows\system32>C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.
exe -i
Microsoft (R) ASP.NET RegIIS version 4.0.30319.17929
Administration utility to install and uninstall ASP.NET on the local machine.
Copyright (C) Microsoft Corporation. All rights reserved.
Start installing ASP.NET (4.0.30319.17929).
.............
Finished installing ASP.NET (4.0.30319.17929).
C:\windows\system32>
Antwort4
Unter Windows Server 2019 müssen Sie den Assistenten „Rollen und Features hinzufügen“ verwenden, um „ASP.NET 4.7“ und alle vom Assistenten vorgeschlagenen Zuverlässigkeitsmodule zu installieren. Dadurch werden alle ASP.NET-Module und -Handler in IIS aktiviert.