ASP.NET 5 MVC: kan geen verbinding maken met webserver ‘IIS Express’

Wat ik doe:

Het verwijderen van applicationhost.config, te vinden in Documents\IISExpress\config, verandert het foutbericht niet. (Er is ook een map IISExpressin program filesen program files (x86).)

Iets wat me is opgevallen, en ik weet niet of het een probleem is:

Bestand waarnaar verwezen wordt ‘lib/jquery-validation/jquery.validate.js’ niet gevonden.

Ik heb een dump met rawcap, maar daar merk ik niet veel van. Een deel van wat er was:

“Framework”:{“FrameworkName”:”DNXCore,Version=v5.0″,”FriendlyName”:”DNX Core 5.0″,”ShortName”:”dnxcore50″,”RedistListPath”:null}

Ik merk geen probleem, maar ik heb de netwerkgegevens als dat kan helpen erachter te komen waarom ik geen verbinding kan maken met de webserver. Ik krijg onmiddellijk een RST,ACK, dus ik vermoed dat de poort gesloten is en dat wat deze webserver ook is, niet wordt ingesteld.

Meer over dit probleem: 800700c1-fout van /trace:fout

Ik heb het geprobeerd:

  • applicatiehost.config verwijderen (en poortnummer wijzigen)
  • visual studio uitvoeren als beheerder
  • het verwijderen van de IISExpress-map in Documenten (verandert de foutmelding totdat de map opnieuw wordt geïnstalleerd)
  • ssl in- en uitschakelen, url kopiëren naar startvak. (opmerking: ik gebruik geen ssl)
  • alle sfc /scannow-fouten wissen
  • iisexpress starten met x86-versie en 64-bits versie

Antwoord 1, autoriteit 100%

Na het installeren van Update 2 voor Visual Studio 2015 kreeg ik dezelfde foutmelding. Ik heb alles hierboven geprobeerd zonder geluk. Ik heb echter een oplossing gevonden die voor mij werkt:

  1. Verwijder YourSolutionFolder\\.vs\config\applicationhost.configbestand (let op: .vs is een verborgen map)
  2. Open Visual Studio, klik met de rechtermuisknop op de website > Eigenschappen > Tabblad Foutopsporing > Instellingen webserver > App-URL – wijzig poortnummer.

Antwoord 2, autoriteit 72%

Verlaat VS en verwijder het bestand (project)\.vs\applicationhost.config. Start VS opnieuw op. Het zou moeten beginnen te werken.


Antwoord 3, autoriteit 12%

Probeer een andere poort te gebruiken. Ik heb zojuist een nieuw Core 1.0 RC1-project opgezet en kreeg dezelfde fout.

  • Klik met de rechtermuisknop op webproject
  • Tabblad Foutopsporing
  • Schakel SSL inschakelen uit en weer in, het zou een nieuwe willekeurige poort moeten genereren
  • Kopieer de SSL-URL en plak in het vak URL starten
  • Het project uitvoeren

Werkte voor mij (TM).

Antwoord van: https://stackoverflow.com/a/28650554/134761


Antwoord 4, autoriteit 12%

Ik had dit probleem op .net core 2.1, visual studio versie 15.9.6. Toen ik de .vs-map verwijderde, heropende ik Visual Studio en het probleem was er nog steeds. De oplossing die voor mij werkte hieronder:

  1. Verwijder de .vs-map (het is een verborgen map).
  2. Start de computer opnieuw op.

Andere oplossingen:

  • Sluit Visual Studio, Delete Bin en OBJ-mappen uit de map Project. Open project dan opnieuw opbouwen.
  • Probeer visuele studio als beheerder te gebruiken.
  • Clean Solution Rebuild
    1. schone oplossing. 2) Verlaat Visual Studio. 3) Verwijder .VS-map 4) Open Visual Studio
  • Start machine (als u zich kunt veroorloven)

Antwoord 5, Autoriteit 9%

Ik heb geconfronteerd met dit probleem in .NET Core 2.0 wanneer ik het poortnummer van mijn project bijwerk.

Ik kon in twee stappen uitzoeken:

  • Stap 1: Verwijder .VS-map die verborgen is in de hoofdoplossingmap. (Sluit Visual Studio vóór deze) Dan wanneer u nogmaals Visual Studio start, deze map en bestand (applicationhost.config) in de binnenkant automatisch door visuele studio.
  • Stap 2: Voor meerdere opstart Projecten, als u nog steeds een probleem tegenwerkt, dan één voor één uitloopproject als opstarten en vervolgens als meerdere opstartproject uitvoeren.

Antwoord 6, Autoriteit 6%

Gekoppelde mijn reactie op een antwoord op verzoek.

Voor Net Core 2.2-project – na een enorme strijd en alles proberen, van het verwijderen van .VS-map, het verwijderen van IIS Express-configs, het veranderen van poortnummers, veranderende bindingen, en om vs te draaien als admin. Ik heb eindelijk een probleem met

  1. Sluiting vs,
  2. LaunchSettings.json
  3. verwijderen

  4. openen vs die lancering van litingsettings.json opnieuw gegenereerd.

Het was niet duidelijk dat het bestand corrupt of onjuist was of zelfs wanneer het veranderde om mislukt te veroorzaken.


Antwoord 7, Autoriteit 5%

Ik had hetzelfde probleem, ik kon het oplossen door het poortnummer te veranderen.

  1. Klik met de rechtermuisknop op het project en selecteer Eigenschappen

  2. Ga naar het debuggedeelte

  3. onder Web Server-instellingen Wijzig app-URL-poort [gewoon toenemen met één:)]


Antwoord 8, Autoriteit 4%

Veel van deze beantwoord hebben het probleem bij de hand niet volledig aan. Het echte probleem voor mij was dat ik twee bindingen had met dezelfde poort in mijn applicatiehost.config-bestand en ik had de poort niet geopend naar mijn tweede (niet-localhost) – . VS zal u in staat stellen om nog steeds onder deze omstandigheden te lopen, maar alleen als u in de beheerdersmodus bent (vandaar alle bovenstaande antwoorden).

U maakt in wezen twee IIS Express-exemplaren van uw app op dezelfde poort, dus het wijzigen van een van de poorten in het bestand van uw toepassingHost.Config zal u doorgaan. Er zijn echter twee verschillende applicatiehost.config-bestanden. U wilt degene selecteren met het bindende IP en de poort die u in de eigenschappen van uw project

hebt

.

Ga naar de map waarin u uw projectoplossing- en projectmappen kunt zien (show verborgen items in File Explorer). Navigeer naar uw verborgen .VS-map – & GT; “YEAPPNAME” MAP – & GT; config. Het moet de bindende info bevatten die u in de eigenschappen van uw project hebt gezien.

Voorbeeld:

<bindings>
    <binding protocol="http" bindingInformation="*:7000:127.0.0.1" />
    <binding protocol="http" bindingInformation="*:7000:192.168.0.5" />
</bindings>

Wijzig een van die poortnummers op iets anders dan “7000”, zodat u niet probeert dezelfde poort te gebruiken.

In mijn geval gebruik ik een 192-adres dat geen localhost-adres is, dus ik moet een aantal netsh-commando’s gebruiken om die poort te openen en een IP-adres te openen. Hier is een Linkdat laat zien hoe u poorten voor IIS Express kunt openen om verbinding op afstand mogelijk te maken. Uitvoeren als een normale gebruiker zal niet werken, tenzij u de vermelde netsh-opdrachten uitvoert.

Hier zijn de netsh-commando’s:

  1. netsh http add urlacl url=http://192.168.1.42:58938/user=iedereen
  2. netsh advfirewall firewall add rule name=”IISExpressWeb” dir=in protocol=tcp localport=58938 profile=private remoteip=localsubnet action=allow

Kopieer die opdrachten en voer ze uit in cmd met ADMIN-rechten en met UW ip-adres en poortnummer.


Antwoord 9, autoriteit 4%

Voer VisualStudio uit met beheerdersrechten en voer het project uit. Sluit vervolgens VisualStudio en alle fouten en voer VisualStudio opnieuw uit met de normale gebruiker.

Dit deed het voor mij.

Het lijkt erop dat IIS iets naar een configuratie moet schrijven met beheerdersrechten (poort 80 werkte niet met de normale gebruiker, maar poort 6767 werkte prima).


Antwoord 10, autoriteit 4%

Ik heb zojuist mijn profiel gewijzigd van “IIS Express” in “MyProjectName” (waarvan ik denk dat het torenvalk gebruikt als de http-server in plaats van IIS) en nu werkt het prima:


Antwoord 11, autoriteit 4%

In mijn geval dat een andere applicatie was die luistert in dezelfde poort die IIS uitdrukkelijk probeerde te bevestigen. Ik moet ondervragen netstat -aoom PID van proces te zien dat dezelfde poort en shutdown-applicatie gebruikt. In mijn geval was de applicatie VIBIB.


Antwoord 12, Autoriteit 3%

De oplossing die voor mij werkte, was om:
Sluit het VS-project
Navigeer in File Explorer naar het project en verwijder de volledige map “.vs”
Start het project opnieuw
Rennen als “debug”
Werken
Blijkbaar heeft het iets te maken met het bestand “Applicationhost.config”.

Geniet!


Antwoord 13, Autoriteit 3%

om

te verduidelijken

Echt veel antwoorden hier zijn hetzelfde en zeggen iets als “opnieuw opstarten en het werkt op magische wijze weer”.

Nou, 9 van de 10 keer hebben mensen dit probleem zoals het OP is omdat het IP-adres al in gebruik is.

Antwoord

Er kunnen 2 ipsadressen zijn die in gebruik zijn. Beide die u kunt vinden op:

1) Met de rechtermuisknop klikken op het opstartproject

2) Klik op “Eigenschappen”

3) Klik op het tabblad “Debug”

Hier ziet u uw “app-URL” en uw “SSL-URL”.

  • Als uw “app-url” in gebruik is, wijzig het daar gewoon en sla het op en het moet opnieuw werken.

  • Als uw “SSL-URL” in gebruik is, sluit u VS te sluiten, verwijdert u het bestand “Applicationhost.config” in de map verborgen .vs van uw project en opent u opnieuw.


Antwoord 14, Autoriteit 2%

Als u het zich kunt veroorloven om uw machine opnieuw op te starten, doe het dan 👌, dit heeft mijn probleem opgelost na bijna een uur van het proberen dit probleem te repareren zonder hoop 🤯.


Antwoord 15, Autoriteit 2%

Ik was in staat om deze fout te schakelen door een enkel ding te veranderen. In mijn ASP.NET Core 1.0 RC2 Web Application Project’s launchSettings.jsonBestand:

 "iisSettings": {
    "windowsAuthentication": false,
    "anonymousAuthentication": true,
    "iisExpress": {
      "applicationUrl": "https://localhost:18177/",
      "sslPort": 0
    }
  },

Naar

 "iisSettings": {
    "windowsAuthentication": false,
    "anonymousAuthentication": true,
    "iisExpress": {
      "applicationUrl": "http://localhost:18177/",
      "sslPort": 0
    }
  },

Ik was gewijzigd in HTTPS in een poging om het project te draaien met dat protocol. Blijkbaar is dit niet de plek om die verandering te maken. Ik vermoed dat het meerdere bindingen op dezelfde poort creëert en IIS Express niet leuk vindt.


Antwoord 16, Autoriteit 2%

Ik had ditzelfde probleem, maar de manier waarop ik het heb gerepareerd, was door naar de applicatiehost.config te gaan en een poort te verwijderen die niet door mij werd toegevoegd (IIS Express I zou raden) die mijn specifieke poortsite op een andere haven plaatste.

Hier is wat het configuratiebestand had voor mijn bindingen:

<bindings>
      <binding protocol="http" bindingInformation="*:54764:localhost" />
      <binding protocol="https" bindingInformation="*:44360:localhost" />
</bindings>

Ik heb het eerste bindingsitem verwijderd als de enige poort die ik wilde was 44360. Mijn configuratie-bestand ziet er nu als volgt uit:

<bindings>
      <binding protocol="https" bindingInformation="*:44360:localhost" />
</bindings>

Nu zie ik de fout niet wanneer ik debug.

Ik heb ook opgemerkt dat mijn tweede API in mijn project Haven 80 had toegewezen, ik heb dat ook verwijderd.


Antwoord 17

verwijder bin- en obj-mappen uit de projectmap en herbouw.


Antwoord 18

Ik heb zojuist mijn oplossing schoongemaakt, vervolgens opnieuw gebouwd en uiteindelijk op F5 gedrukt en het werkte! Zo eenvoudig.


Antwoord 19

Ik zal niet doen alsof ik volledig begrijp welke MS-bug dit probleem veroorzaakt, maar hier is nog een mogelijke oplossing:

Zoek in het bestand .vs/config/applicationHost.config de sectie voor <system.applicationHost><applicationPools>. Zorg ervoor dat onder de pools de managedRuntimeVersion-kenmerkwaarde overeenkomt met de waarde in de IIS-configuratie voor het systeem (en/of de versie van het .NET-framework dat is geïnstalleerd).

Je kunt bijvoorbeeld (zoals ik deed) ontdekken dat het gegenereerde bestand het volgende heeft:

   <add name="Clr4IntegratedAppPool" managedRuntimeVersion="v4.0" managedPipelineMode="Integrated" CLRConfigFile="%IIS_USER_HOME%\config\aspnet.config" autoStart="true" />

In mijn geval zou je dit vervangen door:

   <add name="Clr4IntegratedAppPool" managedRuntimeVersion="v4.0.30319" managedPipelineMode="Integrated" CLRConfigFile="%IIS_USER_HOME%\config\aspnet.config" autoStart="true" />

Let op de vervanging van “v4.0” naar “v4.0.30319”. Hiermee is het probleem opgelost.


Wat lijkt er aan de hand te zijn:

Ik geloof dat VS een applicationHost.config-bestand genereert met “standaard” versies voor het .NET-framework, die mogelijk niet overeenkomen met de specifieke versie die op het systeem is geïnstalleerd/geconfigureerd. U kunt dit probleem opsporen/observeren door de uitvoering in Process Monitor te volgen en de opdrachtregel voor iisexpress.exe te zoeken. Het uitvoeren van deze opdracht met toegevoegd /trace:errorlevert een meer informatief bericht op over het niet voorladen van de CLR met versie v4.0. Te weten:

IIS Express starten…
Mislukt tijdens het preloaden van CLR-versie v4.0. uur = 80131700
Kan de W3WP_HOST hr = 80131700 niet initialiseren
Procesmodel afsluiten genaamd
Kan iisexpress niet starten.


Hoe dan ook, ik dacht dat dit misschien nuttig zou zijn voor iemand anders, aangezien het gebruikelijk genoeg is om meerdere referenties online te hebben met slechte informatie, en ik heb het nu een paar keer persoonlijk getroffen.


Antwoord 20

Voor mij was het probleem dat een ander proces dezelfde poort gebruikte. (In mijn geval was het Outlook dat dezelfde poort gebruikte als mijn site en dus kon mijn site niet starten)

Ja, u kunt de lokale poort wijzigen, maar als u een API gebruikt of iets dat andere toepassingen nodig hebben, wilt u dit niet altijd doen.

Om een lijst te krijgen van welke applicaties welke poort gebruiken, open CMD en typ “netstat -aon”
U krijgt een lijst met poorten. Zoek de poort die uw site moet gebruiken of die u wilt gebruiken en noteer / onthoud de PID.

Open nu taakbeheer en klik op het tabblad ‘details’. Zoek het proces met uw PID en beëindig het. Nu zou u IIS Express met die poort moeten kunnen starten.


Antwoord 21

Voor mij was IIS Express niet toegankelijk toen ik iplistenop DOS-prompt als volgt heeft: netsh http add iplisten MyIPAddress. Ik heb het opgelost door de iplistenLike This te verwijderen: netsh http delete iplisten MyIPAddress.


Antwoord 22

Ik ben net hetzelfde probleem tegengekomen en ik heb alle processen van “Iisexpress.exe” gedood die nog steeds draaiden. Die voor mij werkte!


Antwoord 23

Probeer deze eerst als het werkte en plotseling is gestopt:

  • Sluiten Visual Studio
  • Dood Iisexpress.exe-processen
  • Reopen Visual Studio

Antwoord 24

De mijne gebeurt zodra ik een nieuwe binding binnen de applicatiehost.config toevoeg, als beheerder het probleem opgelost.


Antwoord 25

Sluit gewoon de visuele studio en heropen en uitvoeren.
Het werkte voor mij.


Antwoord 26

Mijn oplossing (voor .NET Core 2.0) was dat ik het had vergeten het poortnummer in de applicatie toe te voegen, onder Iisexpress in LaunchSanStings.json

"iisExpress": {
  "applicationUrl": "https://localhost:50770",
  "sslPort": 50770
}

Antwoord 27

Ik kon dit oplossen door mijn computer opnieuw te starten. Ik probeerde een paar dingen zonder succesvol en gaf uiteindelijk op en startte mijn computer opnieuw op. Het heeft nu een paar dagen lang goed gewerkt nadat ik opnieuw benart. Waarschijnlijk het resultaat van een proces dat opgehangen was.


Antwoord 28

Voor mij was het een mengsel van het volgen van deze Instructies :

Verwijder de .vs \ applicationhost.config en probeer uw webtoepassing
opnieuw.

En dan, misschien wel het belangrijkste, Visual Studio draaien met beheerdersrechten.


Antwoord 29

Ik heb .UseUrls("https://localhost:<some port>/")toegevoegd aan Program.cs. Dit leek mij te helpen!


Antwoord 30

Het probleem kan zijn dat [√] Enabled SSLis geselecteerd voor uw project (zie het tabblad Debugin het venster met projectinstellingen), maar Visual Studio besluit dit te doen. dom en stel zoiets in als http://localhost:32396. De reden dat het mislukt is omdat 1. het geen HTTPSis, en 2. het certificaat niet geldig is. Om het te forceren, moet je een poort gebruiken in het bereik 44300-44398.

Zie https://stackoverflow.com/a/24957146/1236397

Other episodes