2017-12-24 5 views
1

Ich habe eine funktionierende ASP.NET-Webanwendung. Ich versuche, SSL mithilfe von Let's Encrypt zu aktivieren, und dazu fügt mein freigegebener Webhost-Host (A2) eine web.config im .well-known/acme-challenge-Verzeichnis hinzu. (All diese web.config-Datei bindet ausdehnungsfreie Dateien in reinen Text).Web.config im Unterverzeichnis verursacht 500 internen Serverfehler

<?xml version="1.0" encoding="UTF-8"?> 
<configuration> 
    <system.webServer> 
     <staticContent> 
      <mimeMap fileExtension="." mimeType="text/plain" /> 
     </staticContent> 
    </system.webServer> 
</configuration> 

Das Problem ist die bloße Anwesenheit eines web.config in einem Unterordner wieder einen Antrag auf Mittel aus diesem Ordner zu verursachen scheint einen 500-Fehler zum Scheitern verurteilt, zurück. Ich habe sogar eine komplett leere web.config in diesem Ordner versucht und das verursacht immer noch 500 Fehler. Mein Verständnis ist, dass ASP.NET zusätzliche web.configs in Unterordnern unterstützen sollte, aber ich habe keine Ahnung, warum es nicht funktioniert.

Ich habe eine web.config in meinem Stammordner mit der richtigen Bindung für erweiterungsfreie Dateien, aber das A2 Let's Encrypt Tool besteht darauf, seine eigenen in den Unterordner hinzuzufügen. Ich habe keine Attribute, die das Überschreiben in dieser web.config verhindern.

Ich habe ausführlich gesucht, wie man das beheben kann, aber die meisten der Lösungen, die ich sehe, erfordern eine Änderung der IIS-Konfiguration. Da es sich um einen gemeinsam genutzten Webhost handelt, habe ich die Kontrolle über IIS sehr eingeschränkt, so dass dies keine praktikable Option ist.

+0

Was ist der Subcode des 500 Fehlers? Normalerweise können Sie dies nur sehen, wenn die Fehlerstufe auf Details eingestellt ist. Aber es schnell zu wissen, verengt das Problem. – Matt

+0

Nach Stück für Stück Löschen von Teilen meiner Stamm web.config, fand ich, dass das Löschen der 'staticContent' Abschnitt ermöglicht den Unterordner web.config ordnungsgemäß funktioniert. Ich habe keine Ahnung, warum dies Probleme verursacht, die MSDN-Dokumentation sagt nichts darüber, keine Überschreibungen zu unterstützen. – MgSam

Antwort

0

Können Sie diese zu Ihrem root web.config hinzufügen: <customErrors mode="Off" /> ... die dann in etwas mehr Fehlerinformationen in der 500-Antwort enthalten führen wird? Das könnte einige Hinweise geben, wie man das beheben kann.