UPDATE: Dinge, die ich versucht habe - siehe Antwort unten für die Lösung
Wir haben eine Webforms- und MVC3-Anwendung, die wie eine Anwendung aussieht. Dies wird in vielen Umgebungen (2003, 2008, Win 7) eingesetzt und funktioniert ordnungsgemäß. Ich habe diese Anwendungen gerade auf einem neuen Windows Server 2012-Rechner eingerichtet, und alles funktioniert, außer dass ich Ressourcendateien für die MVC-Site erhalte. Der Browser erhält ein
%Vor%Auf die Ressourcen wird in _layout.cshtml
verwiesen %Vor%sowie den telerik scriptmanager:
%Vor%Wenn ich versuche, direkt zu der Javascript-Datei zu navigieren, bekomme ich denselben Fehler:
%Vor%Einige seltsame Sachen:
Wenn IISReset und die js-Datei drücken, wird nur die erste Anfrage funktionieren.
Jede js, css oder ein Bild, das von einer anderen (webforms) Website (gleicher App-Pool) auf dem Server angefordert wird, funktioniert einwandfrei.
Im Ereignisprotokoll ist nichts mit diesem 500-Fehler verbunden.
Ich habe versucht, dem Benutzer, der den App-Pool ausführt, Berechtigungen voller Berechtigungen hinzuzufügen. Ich habe auch Dateiberechtigungen für die [Maschine] \ IUSR hinzugefügt.
Hier ist meine web.config
%Vor%Alle Ressourcen, egal ob sie Telerik verwenden oder sie mit dem Skript-Tag hinzufügen, geben den Fehler 500 aus. Der Controller und die Ansicht werden korrekt angezeigt (ohne Styles oder JavaScript)
BEARBEITEN:
Routen registrieren:
%Vor%Wie in meinen Änderungen erwähnt. Das Problem war eine falsche IIS-Einstellung, die ich mit dem IIS 6 Metabase Explorer gefunden habe.
Ich habe den IIS 6 Metabase Explorer verwendet (ja, ich habe ihn auf der IIS 8 Site verwendet) und habe einige Einträge gesehen, die nicht auf der Arbeitswebsite waren. Nach dem Löschen eines nach dem anderen fand ich, dass der Eintrag "scriptMaps", der während unserer MSI-Installation hinzugefügt wurde, ein Problem verursachte. Dies wurde hinzugefügt, um während der Installation automatisch Platzhalterzuordnungen hinzuzufügen. Es funktioniert auf IIS6, aber anscheinend nicht auf IIS8.
Ich bin mir nicht sicher, warum die Dateien bei der ersten Anfrage richtig ankommen würden, aber nicht bei nachfolgenden Anfragen, aber das Entfernen des Eintrags hat funktioniert. Ich konnte die "ScriptMaps" -Einstellung nirgendwo in der IIS-GUI finden, aber sie ist wahrscheinlich irgendwo dort.
Ich habe den gleichen Fehler erhalten, als ich meine Site von lokal (Windows 7) auf den Server (Windows 2012) veröffentlicht habe.
Mein lokaler IIS hat diesen Code hinzugefügt:
%Vor%Wo ich das bei Win 2012 gebraucht habe
%Vor%Es scheint, dass die neuere Version von IIS auf Win2012 bereits .woff hinzugefügt hat und anstatt mir irgendwelche Details zu geben, ist es einfach 500 gegangen!
Zu meiner Situation habe ich diesen Fehler bei der Ausführung meiner Anwendung in Windows 8.0 festgestellt.
Nachdem ich den Mini-Typ von .woff von 'font / x-woff' in 'application / x-font-woff' in IIS geändert habe, funktioniert es gut. (Nachdem ich den Minityp geändert habe, wurde meine Webkonfiguration hinzugefügt. 'in staticContent automatisch)
Tags und Links asp.net-mvc-3 web-config windows-server-2012