Qu'est-ce que je fais:
La suppression de applicationhost.config
, situé dans Documents\IISExpress\config
, ne modifie pas le message d'erreur. (Il existe également un dossier IISExpress
dans program files
et program files (x86)
.)
Quelque chose que j'ai remarqué, et je ne sais pas si c'est un problème:
Le fichier référencé 'lib/jquery-validation/jquery.validate.js' est introuvable.
J'ai eu une décharge avec rawcap mais je n'y remarque pas grand chose. Une partie de ce qui était là:
"Framework": {"FrameworkName": "DNXCore, version = v5.0", "FriendlyName": "DNX Core 5.0", "Nom abrégé": "dnxcore50", "RedistListPath": null}
Je ne remarque pas de problème, mais j'ai les données du réseau si cela peut aider à comprendre pourquoi je ne peux pas me connecter au serveur Web. J'ai immédiatement un RST,ACK
alors je suppose que le port est fermé et quel que soit le serveur Web utilisé, il n'est pas configuré.
Plus sur ce problème: Erreur 800700c1 de/trace: error
J'ai essayé:
Après avoir installé Update 2 pour Visual Studio 2015, j'ai commencé à avoir la même erreur. J'ai tout essayé ci-dessus sans succès. Cependant, j'ai trouvé une solution qui fonctionne pour moi:
Quittez VS et supprimez le fichier (projet) .vs\applicationhost.config. Redémarrez VS. Il devrait commencer à fonctionner.
Essayez d'utiliser un autre port. Je viens de mettre en place un nouveau projet Core 1.0 RC1 et j'ai la même erreur.
Travaillé pour moi (TM).
Réponse de: https://stackoverflow.com/a/28650554/134761
J'ai rencontré ce problème dans .net core 2.0 lorsque j'ai mis à jour le numéro de port de mon projet.
J'ai pu résoudre le problème en deux étapes:
La solution qui a fonctionné pour moi était la suivante: Fermer le projet VS Dans l'Explorateur de fichiers, accédez au projet et supprimez l'intégralité du dossier ".vs" Redémarrez le projetLancez en tant que "Debug" Fonctionne Apparemment, cela a quelque chose à voir avec le fichier "applicationhost.config".
Prendre plaisir!
J'ai eu ce même problème, mais la façon dont j'ai résolu le problème était d'aller dans le fichier applicationhost.config et de supprimer un port qui n'avait pas été ajouté par moi (IIS Express, je suppose), ce qui a placé mon site de port spécifique sur un autre port.
Voici ce que le fichier de configuration avait pour mes liaisons:
<bindings>
<binding protocol="http" bindingInformation="*:54764:localhost" />
<binding protocol="https" bindingInformation="*:44360:localhost" />
</bindings>
J'ai supprimé le premier élément de liaison car le seul port que je voulais était 44360. Mon fichier de configuration ressemble maintenant à ceci:
<bindings>
<binding protocol="https" bindingInformation="*:44360:localhost" />
</bindings>
Maintenant, je ne vois pas l'erreur quand je débogue.
J'ai également remarqué que le port 80 de ma deuxième API de mon projet était également affecté, que j'ai également supprimé.
Exécutez VisualStudio avec les privilèges d’administrateur et exécutez le projet. Fermez ensuite VisualStudio et toutes les erreurs et réexécutez VisualStudio avec l'utilisateur normal.
Cela l'a fait pour moi.
Il semble que IIS doive écrire quelque chose dans une configuration avec des privilèges d'administrateur (le port 80 ne fonctionnait pas avec un utilisateur normal mais le port 6767 fonctionnait correctement).
supprimez les dossiers bin et obj du dossier du projet et reconstruisez-les.
Fermez juste le studio visuel et rouvrez-vous et exécutez… .. Cela a fonctionné pour moi.
Le mien se produit dès que j'ajoute une nouvelle liaison dans le fichier applicationhost.config, exécuté en tant qu'administrateur, corrigeant le problème.
J'ai été capable de changer cette erreur en changeant une seule chose. Dans le fichier launchSettings.json
de mon projet d'application Web ASP.Net Core 1.0 RC2:
"iisSettings": {
"windowsAuthentication": false,
"anonymousAuthentication": true,
"iisExpress": {
"applicationUrl": "https://localhost:18177/",
"sslPort": 0
}
},
à
"iisSettings": {
"windowsAuthentication": false,
"anonymousAuthentication": true,
"iisExpress": {
"applicationUrl": "http://localhost:18177/",
"sslPort": 0
}
},
J'avais changé pour https dans une tentative d'exécuter le projet en utilisant ce protocole. Apparemment, ce n’est pas le lieu de faire ce changement. Je soupçonne qu'il crée plusieurs liaisons sur le même port, et IIS Express n'aime pas cela.
Dans mon cas, il s’agissait d’une autre application qui écoutait sur le même port que IIS Express tentait d’attacher. Je dois exécuter netstat -ao
pour voir le PID du processus qui utilise le même port et la même application d'arrêt. Dans mon cas, l'application était Viber.
J'ai ajouté .UseUrls("https://localhost:<some port>/")
à Program.cs. Cela semblait faire l'affaire pour moi!
Je viens de rencontrer le même problème et j'ai tué tous les processus "iisexpress.exe" en cours d'exécution. Cela a fonctionné pour moi!
Je ne ferai pas semblant de bien comprendre quel bogue MS crée ce problème, mais voici une autre solution potentielle:
Dans le fichier .vs/config/applicationHost.config, recherchez la section relative à <system.applicationHost><applicationPools>
. Sous les pools, assurez-vous que la valeur de l'attribut managedRuntimeVersion
correspond à la valeur qui se trouve dans la configuration IIS du système (et/ou la version du framework .NET installé).
Par exemple, vous pouvez trouver (comme je l'ai fait) que le fichier généré a:
<add name="Clr4IntegratedAppPool" managedRuntimeVersion="v4.0" managedPipelineMode="Integrated" CLRConfigFile="%IIS_USER_HOME%\config\aspnet.config" autoStart="true" />
Dans mon cas, vous remplaceriez ceci par:
<add name="Clr4IntegratedAppPool" managedRuntimeVersion="v4.0.30319" managedPipelineMode="Integrated" CLRConfigFile="%IIS_USER_HOME%\config\aspnet.config" autoStart="true" />
Notez le remplacement de "v4.0" à "v4.0.30319". Cela a résolu le problème.
Ce qui semble se passer:
Je crois que VS génère un fichier applicationHost.config avec des versions "par défaut" pour le framework .NET, qui peut ne pas correspondre à la version spécifique installée/configurée sur le système. Vous pouvez résoudre ce problème en observant son exécution dans Process Monitor et en recherchant la ligne de commande pour iisexpress.exe. L'exécution de cette commande avec l'ajout de /trace:error
génère un message plus informatif sur l'échec du préchargement du CLR avec la version v4.0. En être témoin:
Démarrage de IIS Express ...
Échec lors de la tentative de préchargement de la version 4.0 du CLR. h = 80131700
Échec de l'initialisation du W3WP_Host hr = 80131700
Process Model Shutdown appelé
Impossible de démarrer iisexpress.
Quoi qu'il en soit, j'ai pensé que cela pourrait être utile à quelqu'un d'autre, car il est assez courant d'avoir plusieurs références en ligne avec de mauvaises informations, et je l'ai personnellement touché à quelques reprises maintenant.
Pour moi, le problème était qu'un autre processus utilisait le même port. (Dans mon cas, Outlook utilisait le même port que mon site et mon site ne pouvait donc pas démarrer)
Oui, vous pouvez modifier le port local, mais si vous exécutez une API ou une application dont d'autres applications ont besoin, vous ne souhaitez pas toujours le faire.
Pour obtenir une liste des applications utilisant quel port, ouvrez CMD et tapez "netstat -aon" Vous obtiendrez une liste des ports. Recherchez le port que votre site doit utiliser ou que vous souhaitez utiliser et notez/mémorisez le PID.
Maintenant, ouvrez le gestionnaire de tâches et cliquez sur l'onglet 'détails'. Trouvez le processus avec votre PID et terminez-le. Vous devriez maintenant pouvoir démarrer IIS Express avec ce port.
Essayez ceci d’abord si cela fonctionnait et s’arrêtait brusquement:
Ma solution (pour .net core 2.0) était que j'avais oublié d'ajouter le numéro de port dans applicationUrl, sous iisExpress dans launchSettings.json.
"iisExpress": {
"applicationUrl": "https://localhost:50770",
"sslPort": 50770
}
Essayez en cmd
taskkill /im iisexpress.exe /f
taskkill /im dotnet.exe /f
et appuyez sur f5 . Je ne change pas de port, ne supprime pas de fichier et ne redémarre pas VS.
J'ai simplement basculé sur "Activer SSL". Cela a résolu mon problème.
Je pense que le problème sous-jacent est la permission pour moi
Je n'ai pas compris ce qui causait le problème . Mais un réparer installer l'a corrigé.
Il suffit de lancer Visual Studio en tant qu'administrateur et c'est tout.
Pour moi, c'était un mélange de suivre ces instructions :
Supprimez le fichier .vs\applicationhost.config de votre application Web et essayez encore.
Et puis, peut-être le plus important, exécuter Visual Studio avec des privilèges d’administrateur.
J'ai pu résoudre ce problème en redémarrant mon ordinateur. J'ai essayé plusieurs choses sans succès, puis j'ai abandonné et redémarré mon ordinateur. Cela fonctionne bien maintenant depuis quelques jours après mon redémarrage. Probablement le résultat d'un processus qui a été bloqué.
Assurez-vous que la clé de registre suivante \HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP\Parameters\ListenOnlyList
ne contient pas d'adresses IP qui ne sont pas liées à une carte réseau activée sur votre ordinateur.
C’est la cause de mon problème après avoir essayé les différentes solutions énumérées dans cette question SO et parmi d’autres, telles que:
Apparemment, lorsque IIS express tentait de démarrer, il tentait de se lier à cette adresse IP invalide. Le correctif consistait à supprimer l'adresse IP non valide. Cette invalide supplémentaire est peut-être venue de mon réseau sans fil domestique alors que j'étais au travail, une adresse IP différente est attribuée via l'adaptateur câblé.
Une solution miracle peut être de supprimer toutes les adresses IP de la clé de registre et d'exécuter netsh http add iplisten ipaddress=::
pour permettre l'écoute de toutes les adresses.
J'ai pu suivre ce problème après avoir constaté les entrées suivantes du journal des événements:
Le problème peut être dû au fait que [√] Enabled SSL
a été sélectionné pour votre projet (voir l’onglet Debug
dans la fenêtre des paramètres du projet), mais Visual Studio décide d’être muet et d’installer quelque chose comme http://localhost:32396
. La raison de son échec est parce que 1. ce n'est pas HTTPS
et 2. le certificat n'est pas valide. Pour le forcer, vous devez utiliser un port dans la plage 44300-44398.
Pour moi, IIS Express n’était pas accessible lorsque j’ai ajouté iplisten
à l’invite DOS comme suit: netsh http add iplisten MyIPAddress
. Je l'ai corrigé en supprimant la iplisten
comme ceci: netsh http delete iplisten MyIPAddress
.
Et encore une autre façon d’obtenir la même erreur:
Utiliser 0.0.0.0
comme adresse IP. Cela fonctionne bien en production, mais l'échec de IIS Express pour nous a commencé. Changer cela en localhost dans dev a résolu notre problème.
CLARIFIER
Vraiment beaucoup de réponses ici sont les mêmes et disent quelque chose comme "Redémarrez et ça fonctionne à nouveau comme par magie".
Eh bien, 9 personnes sur 10 ont ce problème comme le PO, c’est parce que THE IP-ADDRESS IS DÉJÀ UTILISÉ.
RÉPONSE
Il pourrait y avoir 2 adresses IP utilisées. Vous pouvez trouver les deux par:
1) Clic droit sur le projet de démarrage
2) Cliquez sur "Propriétés"
3) Cliquez sur l'onglet "Débogage"
Vous voyez ici votre "URL de l'application" et votre "URL SSL".
Si votre "URL de l'application" est en cours d'utilisation, changez-la ici et sauvegardez-la. Elle devrait fonctionner à nouveau.
Si votre "URL SSL" est en cours d'utilisation, fermez VS, supprimez le fichier "applicationhost.config" du dossier caché .vs de votre projet et ouvrez de nouveau VS.
Windows 10 Defender Firewall le bloquait. Je l'ai éteint, j'ai lancé l'application mvc core 2.0, et cela a fonctionné. J'ai ensuite réactivé le pare-feu Windows et il est resté opérationnel. Toutes les autres solutions bien conçues n’ont pas fonctionné pour moi. J'espère que cela aide quelqu'un là-bas.
Beaucoup de ceux qui ont répondu ne répondent pas pleinement au problème actuel. Le vrai problème pour moi était que j'avais deux liaisons utilisant le même port dans mon fichier applicationhost.config ET je n'avais pas ouvert le port de ma deuxième liaison (non localhost) . VS vous permettra de continuer à fonctionner dans ces circonstances, mais uniquement si vous êtes en mode administrateur (d'où toutes les réponses ci-dessus).
Vous créez essentiellement deux instances IIS express de votre application sur le même port. Par conséquent, la modification de l'un des ports de votre fichier applicationhost.config vous permettra de continuer. Il existe cependant deux fichiers applicationhost.config différents. Vous voudrez sélectionner celui qui a l'IP de liaison et le port que vous voyez dans les propriétés de votre projet
Accédez au dossier contenant votre solution de projet et les dossiers de projet (affichez les éléments masqués dans l’explorateur de fichiers). Naviguez dans votre dossier .vs caché -> dossier "YourAppName" -> config. Il devrait contenir les informations de liaison que vous avez vues dans les propriétés de votre projet.
Exemple:
<bindings>
<binding protocol="http" bindingInformation="*:7000:127.0.0.1" />
<binding protocol="http" bindingInformation="*:7000:192.168.0.5" />
</bindings>
Remplacez l'un de ces numéros de port par un autre que "7000" afin que vous n'essayiez pas d'utiliser le même port.
Dans mon cas, j'utilise une adresse 192 qui n'est pas une adresse localhost. Je dois donc utiliser des commandes netsh pour ouvrir ce port et l'ip up. Voici un lien qui montre comment ouvrir des ports pour IIS Express afin de permettre la connexion à distance. S'exécuter en tant qu'utilisateur normal ne fonctionnera que si vous exécutez les commandes netsh répertoriées.
Voici les commandes netsh:
Copiez ces commandes et exécutez-les dans cmd avec les privilèges ADMIN, votre adresse IP et votre numéro de port.
J'ai eu ce problème sur .net core 2.1, version 15.9.6 de Visual Studio. Quand j'ai supprimé le dossier .vs, j'ai rouvert Visual Studio et le problème était toujours là. La solution qui a fonctionné pour moi ci-dessous:
J'ai réparé l'installation de Visual Studio 2017 et cela a fonctionné à nouveau
J'utilise VS2017, je désactiveTool > Options > Debugging > Enable JavaScript debugging for ASP.NET
puis je travaille.
Il suffit de changer tous les numéros de port en nouveaux de toutes les séries de travail ... Ne changez pas l'application hôte .config ...