web-dev-qa-db-de.com

IISExpress kann keine SSL-Seite finden, auf der Localhost mit Visual Studio 2013 ausgeführt wird

Wenn ich auf die Site als http: // localhost: 26049 zugreife, läuft die Site einwandfrei. Wenn ich versuche, mit https: // localhost: 44319 auf die Website zuzugreifen, wird die Seite nicht gefunden.

Dies ist meine Projekteigenschaften:

project properties

Dies ist aus meiner IISExpress-Anwendungskonfiguration:

<site name="MVC Authentication" id="2">
    <application path="/" applicationPool="Clr4IntegratedAppPool">
        <virtualDirectory path="/" physicalPath="F:\Projects\MySite\Test" />
    </application>
    <bindings>
        <binding protocol="https" bindingInformation="*:44319:localhost" />
        <binding protocol="http" bindingInformation="*:26049:localhost" />
    </bindings>
</site>
26
garethb

Bekam Lösung von diesem Beitrag. Musste alle localhost-Zertifikate löschen und IIS Express reparieren. Danke @ShaTin

https://stackoverflow.com/a/22818853/853295

Entfernen Sie alle früheren "localhost" -Zertifikate, da diese mit dem von IIS Express generierten in Konflikt stehen könnten. Ich hatte den gleichen Fehler (ERR_SSL_PROTOCOL_ERROR) und es dauerte viele Stunden, bis ich es herausgefunden hatte, nachdem ich viele "Lösungen" ausprobiert hatte. Mein Fehler war, dass ich mein eigenes "localhost" -Zertifikat erstellt hatte, und es gab zwei davon. Ich musste beide löschen und mit IIS Express neu erstellen.

So können Sie das Zertifikat "localhost" prüfen und entfernen:

Geben Sie beim Start Folgendes ein: -> mmc.exe, Datei -> Snap-In hinzufügen/entfernen ..., Wählen Sie Zertifikate -> Hinzufügen> -> Computerkonto -> Lokaler Computer, Überprüfen Sie unter Zertifikate > Persönlich> Zertifikate . Stellen Sie sicher, dass das vorhandene localhost-Zertifikat einen Anzeigenamen "IIS Express Development Certificate" hat. Wenn nicht, löschen Sie es. Wenn mehrere vorhanden sind, löschen Sie alles ..__ Wählen Sie in Visual Studio das Projekt aus, und aktivieren Sie auf der Registerkarte "Eigenschaften" SSL = true. Speichern, erstellen und ausführen. IIS Express generiert ein neues "localhost" -Zertifikat.

Hinweis: Wenn dies nicht funktioniert, versuchen Sie Folgendes: Stellen Sie sicher, dass Sie IIS Express für VS-Projekt deaktivieren und alle laufenden Anwendungen darauf stoppen, bevor Sie das Zertifikat "localhost" entfernen. Sie können auch zu "Systemsteuerung> Programme" und "Repair IIS Express" wechseln.

31
garethb

Bitte, für die Liebe von g * d, versuche dies, bevor du dich in etwas unnötiger Verrücktheit steckst!

(Anscheinend hat IIS Express einen Portbereich von 44300 - 44399 für die Simulation von SSL reserviert.)

Wechseln Sie zu Port 44300 (https: // localhost: 44300 /)

26
DaniDev

Die Schritte, die von mir zur Behebung dieses Problems befolgt werden (ich verwende vs2015)  enter image description here

1) Gehen Sie zur Systemsteuerung

2) Hinzufügen von Programmen

3) Reparieren Sie IIS Express

4) Computer neu gestartet

4) Als nächstes gehe zu meinen Dokumenten-> IIS Express-> Config Files

5) Nehmen Sie eine Kopie davon und entfernen Sie die Dateien von dort

6) Alle Elemente löschen C:\Temp

7) Suchen Sie nach .vs-Ordner in Ihrer sln-Datei und gehen Sie in den config-Ordner

8) Nehmen Sie auch eine Kopie davon und entfernen Sie die darin enthaltenen Dateien

9) Reinigen Sie Ihre Lösung 

10) Starten Sie Visual Studio neu 

11) Erstellen und ausführen

(Ich habe saubere Konfigurationsdateien von den Computern meiner Kollegen an den oben genannten Speicherorten kopiert 
1] In Dokumenten 
2] .vs Ordner
Ich nehme an, dass Sie einfach IISExpress ausführen, und die Datei wird für Sie neu erstellt. Das Exe befindet sich unter: "c:\Programme\IIS Express\iisexpress.exe" .)

14
Kushal M K

Es sieht so aus, als würde IIS Express das Projekt nicht unter der https-URL starten. Ändern Sie die Standard-Projekt-URL in die SSL-Adresse in 

"Webprojekt-> Eigenschaften-> Web-> Projekt-URL" zur URL mit https.

enter image description here

9
TejSoft

In meinem Fall fügte der IIS Express bei einem früheren Lauf ein Zertifikat (localhost genannt) zum Ordner Persönlich> Zertifikate hinzu. Ich habe jedoch einen ungültigen Zertifikatfehler in der Anwendung erhalten. Also habe ich das localhost-Zertifikat in den vertrauenswürdigen Stamm verschoben ...> Zertifikate und alles begann zu funktionieren.

Als ich am nächsten Tag dieselbe Anwendung ausführte, erhielt ich diesen Fehler ERR_CONNECTION_RESET. Alles, was ich tun musste, ist, das localhost-Zertifikat aus dem Ordner Vertrauenswürdiger Stamm ...> Zertifikate zu verschieben und wieder in den Ordner Persönlich> Zertifikate zu verschieben  enter image description here

Falls das "localhost" -Zertifikat in einem der Ordner fehlt, müssen Sie IIS Express in der Systemsteuerung> Software - reparieren/neu installieren . Dadurch wird das localhost-Zertifikat wiederhergestellt.

Visual Studio 2015, IIS Express, Windows 8, Asp.net-MVC

7
Rahatur

Ich hatte diese SSL-Probleme mit Chrome und Edge.

Nach einem langen Prozess der Überprüfung all dieser Antworten und Vorschläge war das, was schließlich für mich funktionierte (asp.net mvc 5, VS2015), eine Mischung der obigen Antworten

  1. Fügen Sie Zertifikate wie oben gezeigt ein, entfernen Sie mehrere Zertifikate und erstellen Sie ein neues Zertifikat: Thanks @garethb
  2. Das Problem betrifft dann die Vertrauensebene dieses Zertifikats. Der folgende Link zeigt Schritt für Schritt, wie Sie das lokale Zertifikat exportieren und dann importieren (nicht nur verschieben) https://blogs.msdn.Microsoft.com/robert_mcmurray/2013/11/15/how-to- -xis-express-selbstsigniertes-zertifikat/

    1. Wenn Sie alles schließen und dann in IIS Express neu erstellen und implementieren, habe ich keine SSL-Fehler mehr in einem Browser
1
Brennon

Ich hatte kürzlich ein sehr ähnliches Problem mit VS 2019 und IIS Epress. Ich habe versucht, das http in https zu ändern, damit ich ADFS verwenden kann. https: //i.stack. imgur.com/Kd34a.png

Nach etwas mehr Recherche habe ich versucht, die Eigenschaft "SSL erforderlich" von "wahr" auf "falsch" und zurück auf "wahr" zu setzen. Dies löste eine Aktualisierung der Datei applicationhost.config (... .Vs\ProjectName\config\applicationhost.config) aus, mit der eine neue SSL-Bindung mit einer neuen Portnummer für das https-Protokoll erstellt wurde. Also habe ich alle Links mit dem vorgeschlagenen neuen Port (in der Web-Eigenschaft des Projekts, der Konfigurationsdatei und der ADFS-Konfiguration) geändert und es funktioniert. Fazit: Es ist nicht erforderlich, dass der http-Port für dieselbe Site mit https identisch ist.

0
Med SOMAI

Keine dieser Optionen funktionierte für mich in VS2017 mit demselben Problem. Diese Lösung, bei der iisexpresscmdadmin mit einem selbstsignierten Zertifikat verwendet wurde, brachte meine Website zum Abrufen:

Wie kann ich ein fehlendes Express-SSL-Zertifikat IIS reparieren?

0
John Ernest

Bei Verwendung von VS 2017 schien keine dieser Lösungen zu funktionieren, selbst nachdem das Zertifikat exportiert und in Chrome importiert wurde ..__ Es funktionierte schließlich, nachdem ich zwei Dinge getan hatte: (1) das localhost-Zertifikat von Personal auf Trusted Root. (2) Die Portnummer in den Projekteigenschaften wurde von 61899 auf 44300 geändert. __ Ich denke, nur Schritt (2) hat den Trick getan.

0
Ross Kelly

Ich hatte das gleiche Problem. Meine HTTP-Site lief einwandfrei, aber IIS Express konnte meine SSL-Site einfach nicht starten. Während es am Tag zuvor tat. 

Mein Problem war, dass ich die Datei aplicationhost.config irgendwie durcheinander gebracht hatte. Mein Projekt wurde zweimal registriert:

<site name="Test.Api" id="5">
    <application path="/" applicationPool="Clr4IntegratedAppPool">
        <virtualDirectory path="/" physicalPath="C:\Users\bartd\Source\Repos\Test\Test.Api" />
    </application>
    <bindings>
        <binding protocol="http" bindingInformation="*:27108:localhost" />
    </bindings>
</site>
<site name="Test.Api(1)" id="6">
    <application path="/" applicationPool="Clr4IntegratedAppPool">
        <virtualDirectory path="/" physicalPath="C:\Users\bartd\Source\Repos\Test\Test.Api" />
    </application>
    <bindings>
        <binding protocol="http" bindingInformation="*:27108:localhost" />
        <binding protocol="https" bindingInformation="*:44349:localhost" />
    </bindings>
</site>

Das Entfernen beider Einträge und das Erstellen eines neuen virtuellen Verzeichnisses auf der Projekteigenschaften-Seite hat das Problem für mich behoben. 

Ein neues virtuelles Verzeichnis von der Eigenschaftsseite erstellen

0
bartd

Versuchen Sie, Bindungen in IIS zu ändern

Dieser Link ist das, was meine 3 Tage langen intermittierenden Kopfschmerzen gelöst hat: https://deanhume.com/set-up-iis-7-to-run-a-secure-site-locally-https/

Hier sind die spezifischen Schritte, die zu meiner Entdeckung des eigentlichen Problems führen:

Windows-Taste> Verwaltung> Internetinformationsdienste> Klicken Sie auf Standard-Website (oder was auch immer Ihre Website ist) > Bindungen ...> Alle doppelten Bindungen für lokale Hosts wegblasen> https-Bindung für Port 80 hinzufügen.

0
djg