Heute morgen habe ich plötzlich meinen Computer eingeschaltet und Visual Studio gestartet ... Und egal, was ich ausprobiert habe und ob ich laufe oder debugge, und was auch immer der Browser ist (chrome/firefox/IE 11), es wartet auf localhost für immer.
Wenn ich es in Azure implementiere, funktioniert es durch einfaches Einchecken (kontinuierliche Integration) wie ein Zauber: http://couleur-emotion.azurewebsites.net/ (Ich mache meine Mumie-Mal-Website neu, um zu lernen ASP.net MVC)
Ich habe beide gelesen:
Während ich schreibe, hat es mehr als 15 Minuten auf localhost gewartet. Ich habe VS neu gestartet, sogar den Computer neu gestartet ... Ich habe versucht, das ipv6-Zeug auf Firefox zu deaktivieren ... etc
Ich habe festgestellt (weiß nicht, ob es nützlich ist), dass localhost durch 127.0.0.1 ersetzt wird:
Bad Request - Invalid Hostname
HTTP Error 400. The request hostname is invalid.
auch mein C:\Windows\System32\drivers\etc\hosts (unverändert)
# Copyright (c) 1993-2009 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to Host names. Each
# entry should be kept on an individual line. The IP address should
# be placed in the first column followed by the corresponding Host name.
# The IP address and the Host name should be separated by at least one
# space.
#
# Additionally, comments (such as these) may be inserted on individual
# lines or following the machine name denoted by a '#' symbol.
#
# For example:
#
# 102.54.94.97 rhino.acme.com # source server
# 38.25.63.10 x.acme.com # x client Host
# localhost name resolution is handled within DNS itself.
# 127.0.0.1 localhost
# ::1 localhost
Irgendeine Idee ? Ich konnte in 3 Stunden keine einzige Localhost-Seite anzeigen.
Überprüfen Sie die Firewall auf blockierte Ports, und ändern Sie die dynamischen Ports der Anwendung in einen festen Port.
Ich hatte ein ähnliches Problem, bei dem meine Website für immer "Warten" war. Versucht, die Website neu zu starten und nichts.
Ich konnte den Rechner nicht neu starten (ich bin mir ziemlich sicher, dass er das Problem lösen würde). Deshalb habe ich weiter nachgeforscht, was sein könnte.
Ich fand heraus, dass in meinem Fall die Lösung darin bestand, den "Application Pool" der Website zu ändern. Es scheint, dass der aktuelle abgestürzt ist oder so ähnlich (ich konnte ihn stoppen, aber nicht wieder starten), also erstellte ich einen neuen Anwendungspool und die Site funktionierte wieder.
Okay, ich habe festgestellt, dass dies (auf einem Server) geschieht, wenn Sie die Sicherheit richtig gehärtet haben.
Sie können beispielsweise nicht mehr IIS_IUSRS
auf die wwwroot
anwenden, sondern für jeden App-Pool geeignete Konten einrichten und die NTFS-Perms richtig einstellen.
Das Problem ist, dass der Worker-Prozess/ASP.NET die Dateien in den Ordnern auflisten möchte, die "zum Stamm Ihrer Website führen". Ich denke, es will nach web.config-Dateien usw. suchen.
Das Versagen, einen Fehler zu erzeugen, d. H. Das unendliche Laden, ist meiner Meinung nach ein Fehler.
z.B. i:\wwwroot\project\virtual\base
Sie müssen eine IIS_IUSRS
-Gruppe mit Lesezugriff auf wwwroot, project, virtual aber nicht base anwenden. Der Trick ist, nur auf den aktuellen Ordner anzuwenden, d. H. Nicht auf Unterordner und Dateien.
Wenden Sie Leserechte nur für die Worker Process/AppPool-Identität für den Basisordner an.
Wenn IIS_IUSRS
Leserechte für den gesamten Baum hat, haben alle Worker-Prozesse Lesezugriff auf alle anderen Website-Basisordner und -Inhalte, sodass eine angegriffene Site auf Daten/Konfigurationsdateien in anderen Sites zugreifen kann.
Der Neustart vonISISfunktioniert möglicherweise, da die aktuelle Instanz beendet wird und Ihre Webseite in einer neuen Instanz ausgeführt wird.
Mein Problem war das Ergebnis eines nicht korrekten Berechtigungsnachweises im Ordner der funktionierenden Website. Wenn Sie nicht sicher sind, geben Sie dem Ordner die vollständige Kontrolle als Test. User = IIS AppPool [Name des Anwendungspools]
Ich hatte ein Projekt erhalten, bei dem die Webconfig-Portnummer zusammen mit dem Server wie diesem angegeben wurde.
sqlConnectionString="Data Source=<<SQLInstanceName>>\SQLEXPRESS,<<Port>>;Initial Catalog=<<DBName>>;Integrated Security=false;User Id=<<UserName>>;PWD=<<Password>>;"
Nach dem Entfernen der Portnummer aus der Verbindungszeichenfolge verschwand die Fehlermeldung und der Code begann zu funktionieren.
sqlConnectionString="Data Source=<<SQLInstanceName>>\SQLEXPRESS;Initial Catalog=<<DBName>>;Integrated Security=false;User Id=<<UserName>>;PWD=<<Password>>;"
Ich bin relativ neu bei ASP.net. Weiß nicht, ob dies an anderer Stelle Probleme verursacht (^ _ ^).