it-swarm.com.de

Diese Site bietet keine sichere Verbindung

Wenn ich den URL hinzugefügt habe, schreibe ihn in web.config und schreibe ihn in Azure. Es wird automatisch auf https umgeleitet, obwohl ich versuche, mit http auf die Website zuzugreifen.

<rewrite>
  <rules>
    <rule name="Redirect to https">
      <match url="(.*)"/>
      <conditions>
        <add input="{HTTPS}" pattern="Off"/>
      </conditions>
      <action type="Redirect" url="https://{HTTP_Host}/{R:1}"/>
    </rule>
  </rules>
</rewrite>

Wenn ich jedoch denselben Code auf meinem lokalen Computer ausführen, wird der folgende Fehler angezeigt.

Diese Site bietet keine sichere Verbindung

 enter image description here

Wie kann ich den oben genannten Fehler beheben, wenn ich den obigen Code auf meinem lokalen Computer ausführen?

5
pradeep

Was ich persönlich mache, ist, diese Umschreibungskonfiguration in Web.Release.config zu integrieren, weil es ein bisschen fummelig ist, sie lokal zu nutzen.

Das Problem ist, dass IIS Express HTTP und HTTPS an verschiedenen Ports verfügbar macht. Wenn Sie also von http://localhost:1234 zu https://localhost:1234 umleiten, funktioniert es einfach nicht, da IIS Express HTTPS verfügbar macht so etwas wie https://localhost:44300.

Sie können SSL/TLS auf IIS Express aktivieren (und Sie sollten dies tun), aber ich würde die Umschreibungsregel nur für den Freigabemodus belassen.

Hier ist eine Beispieldatei für Web.Release.config:

<?xml version="1.0"?>
<configuration xmlns:xdt="http://schemas.Microsoft.com/XML-Document-Transform">
  <system.web>
    <compilation xdt:Transform="RemoveAttributes(debug)" />
  </system.web>
  <system.webServer>
    <rewrite xdt:Transform="Insert">
      <rules>
        <!-- Redirects users to HTTPS if they try to access with HTTP -->
        <rule
          name="Force HTTPS"
          stopProcessing="true">
          <match url="(.*)"/>
          <conditions>
            <add input="{HTTPS}" pattern="^OFF$" ignoreCase="true"/>
          </conditions>
          <action
            type="Redirect"
            url="https://{HTTP_Host}/{R:1}"
            redirectType="Permanent"/>
        </rule>
      </rules>
      <outboundRules>
        <!-- Enforces HTTPS for browsers with HSTS -->
        <!-- As per official spec only sent when users access with HTTPS -->
        <rule
          xdt:Transform="Insert"
          name="Add Strict-Transport-Security when HTTPS"
          enabled="true">
          <match serverVariable="RESPONSE_Strict_Transport_Security"
              pattern=".*" />
          <conditions>
            <add input="{HTTPS}" pattern="on" ignoreCase="true" />
          </conditions>
          <action type="Rewrite" value="max-age=31536000" />
        </rule>
      </outboundRules>
    </rewrite>
  </system.webServer>
</configuration>

Beachten Sie, dass ich hier auch HSTS hinzufüge. Es fügt das <rewrite>-Element im Release-Modus in Web.config ein. Das <system.webServer>-Element ist bereits in der Web.config vorhanden, andernfalls würde ich das einfügen.

6
juunas

Sie müssen Visual Studio Server für die Verwendung mit HTTPS konfigurieren Bitte gehen Sie für weitere Informationen über diesen Link:
HTTPS mit dem integrierten ASP.NET Development Server von Visual Studio

0
Boney

Ich habe dieses Problem mit einer älteren Version des Chrome-Webbrowsers gelöst.

Dies ist die Liste älterer Chrome-Versionen , wo Sie sie herunterladen und installieren können. 

60.0.3112.90 - für Ubuntu ist die Version, die für mich gut funktioniert.

Vielleicht ist es etwas langsamer als neuere Versionen, aber ich fand es ziemlich gut für die Produktion (:

0
Milosh