1

Ich aktiviert SSL in Visual Studio 2015, um Facebook und Google Login lokal zu implementieren.Visual Studio 2015. Fehler beim Registrieren der URL für den Zugriff auf die Site wird IIS Express verweigert. Zugriff verweigert 0x80070005

Ich habe die Projekt URL im Registerkarte Web der Eigenschaften des Projekts https://localhost:44300/ und schmückten die Steuerung mit den RequireHttps Attribut - ref @msdn.

Alles hat gut vor Ort funktioniert.

Ich habe die Einstellungen auf HTTP zurückgesetzt, um etwas anderes zu testen, und das verursachte mir ein Problem, als ich versuchte, zu HTTPS zurückzukehren.

Ich fand this SO Frage und versuchte fast jede vorgeschlagene Lösung.

Fehler Detail:

fehlgeschlagen URL registrieren "url" für Website "Website" Anwendung "Weg". Fehlerbeschreibung: Zugriff verweigert. (0x80070005).

+0

Sie sollten die Antwort Teil auf eine Antwort extrahieren und sie akzeptieren. Das ist das Format einer FAQ, wenn Sie andere Beiträge lesen. –

+0

Danke für den Tipp. –

Antwort

1

Es stellte sich heraus, diese Antwort on the same question thread von Cayne führte mich zu der Lösung.

Die Portänderung funktionierte nicht, da die Datei "applicationhost.config", die sich im .vs-Ordner für VS2015 befindet, die Bindungskombination des alten Ports für Http und Https als Standardeinstellung beibehalten hat. Egal, wie oft ich den Port zu etwas anderem änderte, während ich mit Http versuchte (wurde nur mit einer Menge neuer Webseitenbindungen in der Konfigurationsdatei verstopft), sobald ich zurück zu SSL wechseln wollte, endete es mit der ersten Bindungskombination . Der Hafen, über den er sich beschwert hat, kann nicht mehr registriert werden.

Sobald ich diese erste Bindung Combo gelöscht hatte, war alles in Ordnung.

Ich hoffe, dass dies jemand in der Zukunft helfen wird.

4

Ich hatte diesen Befehl in DOS zu erteilen, das Problem in VS 2015 zu lösen:

netsh http add urlacl url=http://{ip_addr}:{port}/ user=everyone 

Seltsam war dies nur dann benötigt, wenn ich das Projekt auf einen anderen PC übertragen. Auf dem Original-PC brauchte ich es nicht.

+1

Beachten Sie, dass *, 127.0.0.1 und localhost als separate behandelt werden ... netsh http löschen urlacl url = http: // *: 10001/ netsh http hinzufügen urlacl url = http: // *: 10001/user = alle netsh http löschen urlacl url = http: //127.0.0.1: 10001/ netsh http urlacl url = http: //127.0.0.1: 10001/user = alle netsh http urlacl url = http löschen: // localhost: 10001/ netsh http URL hinzufügen url = http: // localhost: 10001/user = alle –

0

Zum C: \ Benutzer {username} \ Dokumente \ IISExpress \ config und öffnen Sie die applicationhost.config Datei.

Suchen Sie im Dokument nach dem Tag <sites>. Sie werden einige der folgenden Zeilen sehen.

<site name="WebSite1" id="1" serverAutoStart="true"> 
    <application path="/"> 
     <virtualDirectory path="/" physicalPath="%IIS_SITES_HOME%\WebSite1" /> 
    </application> 
    <bindings> 
     <binding protocol="http" bindingInformation="*:8080:localhost" /> 
    </bindings> 
</site> 

Ersetzen der Linie <binding protocol="http" bindingInformation="*:8080:localhost" /> wie folgt.

<binding protocol="http" bindingInformation="*:{required_port_number}:*" /> 

Ich glaube, Sie können sogar die * Markierungen in bindingInformation entfernen.

Starten Sie dann IIS-Server (alle IIS-Server bezogene Operationen entfernen mit Task-Manager und gehen Sie zu C: \ Program Files \ IIS Express Ordner und führen iisexpress.exe: Sie könnte Als Administrator ausführen müssen).

Eine Konsole wird geöffnet und wenn alles gut gegangen ist, werden folgende Zeilen angezeigt.

Successfully registered URL "http://*:{required_port_number}/" for site "Website1" application "/" ...

Auch im Browser überprüfen, ob die gewünschte URL funktioniert jetzt.

Here's a very useful resource...