Frage

Ich habe ein einzelnes Verzeichnis auf meiner ASP.NET -Website, das SSL aktiviert habe. Für alle anderen Verzeichnisse möchte ich nicht, dass SSL aktiviert ist.

Mit IIS habe ich die Kontrollkästchen für den SSS-Verschlüsselungskästchen (128-Bit-Verschlüsselung "für den Ordner überprüft, den ich benötigen möchte, SSL.

Wenn ein Benutzer in "http: //" für mein sicheres Verzeichnis eingreift, möchte ich sie automatisch in "https: //" umladen. Ich habe zwei Ansätze ausprobiert und beide sind gescheitert.

Ansatz 1: Ändern Sie die Seite "benutzerdefinierte Fehler IIS" für das Verzeichnis für 403; 4 in eine URL, die auf: "/intranet2/sslredirect.aspx" zeigt. Der SSLRedirect verweist sie auf die richtige Stelle. Wenn ich das tue, erhalte ich "Die angegebene Anfrage kann nicht aus dem aktuellen Anwendungspool ausgeführt werden", obwohl die URL Teil der Website ist und ich nur einen App -Pool für die gesamte Website (nicht für den StandardaLaultapppool) habe.

Ansatz 2: Fügen Sie ein Web.config im Verzeichnis hinzu, um den 403 -Fehlercode zu übergeben. Sieht aus wie das:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
    <system.web>
        <customErrors defaultRedirect="../Default.aspx" mode="On">
            <error statusCode="403" redirect="../SSLRedirect.aspx" />
        </customErrors>
    </system.web>
</configuration>

Aber wenn ich diese Änderung vornehme, bekomme ich immer den in IIS definierten Standard 403.4.

Irgendwelche Vorschläge?

War es hilfreich?

Lösung

Ansatz 1: Sie scheinen falsch zu sein, dass Sie nur einen App -Pool für die gesamte Website konfigurieren lassen. Sie haben wahrscheinlich eine für die Standard -Site und eine für ein virtuelles Verzeichnis, mit dem Sie arbeiten. Ihre Entscheidungen sind entweder:

a) Neukonfigurieren Sie es so, dass Sie wirklich nur einen App -Pool für die gesamte Website haben.

b) Servieren

c) Die Registrierung optimieren, um diesen Fehler auszuschalten: Setzen Sie IgnoreApppoolForCustomErrors auf 1 in HKLM System CurrentControlSet Services W3SVC Parameters. Sehen http://blogs.msdn.com/b/rakkimk/archive/2006/09/01/735684.aspx

Ansatz 2: Benutzerdefinierte Fehler in Web.config werden nur verwendet, wenn ASP.NET den Fehler bearbeitet. Ich glaube, IIS engagiert sich hier nicht mit ASP.NET -Handhabungsmotor, da der SSL -Scheck fehlgeschlagen ist. Das funktioniert also hier einfach nicht.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top