Ich repliziere die Webanwendungsbereitstellung und habe einige Probleme mit HTTP Error 500.19
gefunden. Mein Computer führt Windows 7 aus, während die Entwicklungsumgebung Windows 8 verwendet. Wir entwickeln unsere Webanwendung mit Visual Studio 2010.
Zuerst bekam ich den Fehlercode 0x80070021
, ähnlich wie im Beitrag hier . Ich aktualisiere meine web.config entsprechend der akzeptierten Antwort, und dann erhielt ich den folgenden Fehlercode (der ähnlich ist wie hier ).
HTTP Error 500.19 - Internal Server Error
Error Code 0x8007000d
Config Source -1: 0:
Ich habe die Symptomendefinition in Microsoft-Supportseite gelesen und die Ursache des Fehlers ist:
Dieses Problem tritt auf, weil die ApplicationHost.config-Datei oder die Web.config-Datei ein fehlerhaftes XML-Element enthält.
und die Lösung ist
Löschen Sie das fehlerhafte XML-Element aus der ApplicationHost.config-Datei oder aus der Web.config-Datei.
Die von mir verwendete web.config funktioniert jedoch perfekt in der ursprünglichen Entwicklungsumgebung.
Folgendes habe ich bisher geprüft und ausprobiert:
Dies ist Teil meiner Web.Config
<system.webServer>
<section name="handlers" overrideModeDefault="Allow" />
<section name="modules" allowDefinition="MachineToApplication" overrideModeDefault="Allow" />
<validation validateIntegratedModeConfiguration="false" />
<modules runAllManagedModulesForAllRequests="true">
</modules>
<handlers>
<remove name="UrlRoutingHandler" />
<add name="ReportViewerWebControlHandler" preCondition="integratedMode" verb="*" path="Reserved.ReportViewerWebControl.axd" type="Microsoft.Reporting.WebForms.HttpHandler, Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
</handlers>
<urlCompression doStaticCompression="true" doDynamicCompression="false"></urlCompression>
<directoryBrowse enabled="true" />
<defaultDocument>
<files>
<add value="Logon.aspx" />
</files>
</defaultDocument>
</system.webServer>
Ich habe ähnliche/Duplikate/geschlossene Beiträge (um 13) in stackoverflow gelesen, alle außer der Antwort auf Ajax ausprobiert (ist damit verwandt) und habe immer noch keine Ahnung, was der Fehler ist.
Hat jemand eine Möglichkeit, diesen Fehler zu beheben? (Und wenn möglich, muss eine umfassende Liste von Dingen geprüft werden, damit wir ähnliche Posts wie hier reduzieren können.) Ich bin bereit, weitere Details zu liefern.
Fehler 0x8007000d bedeutet URL-Überschreibungsmodul (in web.config angegeben) fehlt oder die richtige Version ist nicht installiert.
Installieren Sie einfach das URL-Neuschreibungsmodul über das Installationsprogramm der Webplattform.
Ich empfehle, alle Abhängigkeiten von web.config zu überprüfen und zu installieren.
In meinem Fall musste ich iis bei dot net 4 mit folgendem Befehl registrieren, da ich iis neu installiert hatte:
C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i
Beim Versuch, eine .NET Core 1.0-Website einzurichten, erhielt ich diesen Fehler und versuchte alles andere, was ich ohne Erfolg finden konnte, einschließlich der Prüfung der Datei web.config, der IIS_IUSRS-Berechtigungen, IIS URL Modul neu schreiben usw. Am Ende habe ich DotNetCore.1.0.0-WindowsHosting.exe von dieser Seite installiert: https://www.Microsoft.com/net/download und es wurde gestartet sofort arbeiten.
Spezifischer Link zum Herunterladen: https://go.Microsoft.com/fwlink/?LinkId=817246
URL neu schreiben:
UPDATE - Dies ist jetzt hier verfügbar (und funktioniert mit IIS 7-10):
https://www.iis.net/downloads/Microsoft/url-rewrite
Stellen Sie sicher, dass für Ihren IIS -Server der Wert 'Zulässig' eingestellt ist:
Etwas spät zur Party hier, aber ich habe gerade mit dem gleichen Problem (Symptomen) zu kämpfen und das Fehlen einer Fehlerberichterstattung zu verfluchen. Es funktionierte gut auf IIS 8+ -Maschinen, aber Win 7 erhielt diese INSTANT HTTP 500.19-Fehler . Für mich war es genauso dumm wie ein nicht unterstütztes Konfigurationselement in der Konfigurationsdatei:
<applicationInitialization doAppInitAfterRestart="true">
<add initializationPage="/" />
</applicationInitialization>
Während die alten web.config-Dateien ausgeführt wurden, funktionierten sie einwandfrei. Ich habe sie einfach abgehackt und angefangen, neue Blöcke zu entfernen, bis ich die Seite zum Laden bekam. Hätte ich dies als Antwort gesehen, wäre ich diesen Weg sofort gegangen, da ich wusste, dass keine der gängigen Lösungen relevant ist. Hier bitteschön :)
Problem gelöst. Hier sind die Schritte, die ich ausprobiert habe:
Die config, die ich kommentiert habe, ist die vorherige, die ich hinzugefügt habe:
<section name="handlers" overrideModeDefault="Allow" />
<section name="modules" allowDefinition="MachineToApplication" overrideModeDefault="Allow"/>
Ich schalte .NET Framework 3.5 und 4.5 Advance Service in der Systemsteuerung -> Programme und Funktionen -> Windows-Funktionen ein- oder ausschalten.
Ich verstehe, dass dieser Fehler aus vielen verschiedenen Gründen auftreten kann. In meinem Fall lag es daran, dass ich den WSUS-Dienst von Serverrollen deinstalliert hatte und der gesamte IIS ausfiel. Nach einigen Recherchen fand ich heraus, dass die Deinstallation von WSUS einige DLLs entfernt, die für die http-Komprimierung verwendet werden. Da diese DLLs fehlten und der IIS immer noch nach ihnen suchte, habe ich einen Reset mit dem folgenden Befehl in CMD durchgeführt:
appcmd set config -section:system.webServer/httpCompression /-[name='xpress']
Bingo! Das Problem ist jetzt sortiert. Vergessen Sie nicht, es als Administrator auszuführen. Möglicherweise müssen Sie auch "iisreset" ausführen. Nur für den Fall.
Hoffe, es hilft anderen
In meinem Fall (.Net Core Web API) für dieses Problem HTTP-Fehler 500.19 - Interner Serverfehler 0x8007000d
Laden Sie zuerst dotnet-hosting-3.0.0-preview5-19227-01-win (.Net Core 3) oder dotnetcore 2 unter Windows herunter. Installieren Sie es als Administrator. Öffnen Sie cmd als Administrator, geben Sie iisreset ein und drücken Sie die Eingabetaste
Aktualisieren Sie also Ihre localhost-App
Beste Grüße M.M.Tofighi aus dem Iran
Ich hatte dieses Problem mit einem brandneuen Webservice. Es wurde behoben, indem für den Ordner, in dem sich der Dienst befand, schreibgeschützten Zugriff für Jeder auf Eigenschaften -> Sicherheit hinzugefügt wurde.