Impossible de lancer le serveur Web IIS Express, échec de l’enregistrement de l’URL, l’access est refusé

Certains projets Web me causent des problèmes alors que d’autres fonctionnent correctement. J’ai décidé de me concentrer sur l’un des problèmes. J’utilise Visual Studio 2013 sur Windows 7. Je pense que je l’exécute en tant qu’administrateur, le titre de la fenêtre indique PROJECT NAME - Microsoft Visual Studio (Administrator) .

Lorsque j’essaie d’exécuter le projet, je reçois une fenêtre contextuelle disant:

 Unable to launch the IIS Express Web server. Failed to register URL "http://localhost:62940/" for site "SITE NAME" application "/". Error description: Access is denied. (0x80070005). 

Cela ne semble pas tout à fait inhabituel mais j’ai essayé plusieurs des suggestions sans succès:

  1. Supprimé %userprofile%\Documents\IISExpress\ , essayé de s’exécuter.

  2. netsh http add urlacl url=http://localhost:62940/ user=everyone , redémarré et essayé de s’exécuter. (Actuellement user=Alla depuis Windows suédois).

  3. netsh http delete urlacl url=http://localhost:62940/ , redémarré et changé de à dans %userprofile%\Documents\IISExpress\config\applicationhost.config et a essayé de s’exécuter. (Il a changé le message d’erreur pour dire ... URL "http://*:62940/" ...

  4. IIS 8.0 Express réinstallé

  5. Réinstallé Visual Studio 2013

Je suis à bout de nerfs, qu’est-ce que je fais mal?

Edit 1: Si je change le port du projet (par exemple en 55555), cela commence … Ce n’est pas une solution souhaitable car ces projets sont travaillés par plusieurs personnes. Peut-être que le port est bloqué par autre chose? Si oui, existe-t-il un moyen facile de vérifier par quoi?

Edit 2: Le port 62940 semble être gratuit. L’exécution de netstat n’indique aucune application qui l’écoute. Quelque chose d’autre doit être faux.

Edit 3: J’ai essayé de démarrer le projet aujourd’hui après ne l’avoir pas touché pendant quelques mois. Cela a fonctionné mais je ne sais pas pourquoi.

J’ai résolu l’erreur en changeant le port du projet.

J’ai fait les étapes suivantes:

1 – Cliquez avec le bouton droit sur le projet.
2 – Aller aux propriétés.
3 – Allez dans l’onglet Serveur .
4 – Dans la section de l’onglet, modifiez l’URL du projet pour un autre port, par exemple 8080 ou 3000.

Bonne chance!

La solution idéale consiste à utiliser l’icône du bac IIS Express pour arrêter le site Web à l’origine du problème. Pour ce faire, cliquez sur la petite flèche dirigée vers le haut située dans l’extrémité droite de la barre des tâches et cliquez avec le bouton droit de la souris sur l’icône IIS Express. Cela fera apparaître une petite fenêtre montrant les sites Web que IIS Express exécute actuellement …

IIS Express pop up

Si vous cliquez sur l’un des éléments sous “Afficher les sites”, vous avez la possibilité d’arrêter ce site. Vous pouvez également cliquer sur l’élément Quitter au bas de la fenêtre pour arrêter tous les sites Web.

Cela devrait vous permettre de déboguer dans Visual Studio. Lorsque vous recommencez à déboguer, IIS Express redémarre automatiquement le site Web et doit pouvoir allouer le port.

Si cela échoue, vous devez le faire de la façon la plus sale. Ouvrez le Gestionnaire des tâches Windows et tuez le processus Microsoft.VisualStudio.Web.Host.exe*32 , puis vous pouvez exécuter le projet correctement. Notez que cela va tuer complètement IIS Express, ce qui signifie que tous les sites Web s’arrêteront, vous devrez donc redémarrer chacun d’entre eux si vous souhaitez déboguer les autres. Essayez d’abord la méthode de l’icône contextuelle, car elle est plus propre et plus sûre.

Je ne sais pas si cela répond à votre problème, mais cela fonctionne pour moi.

Mise à jour Merci à JasonCoder (voir commentaire ci-dessous) pour avoir ajouté que sur Win10, le processus est Microsoft.VsHub.Server.HttpHost.exe

Lorsque vous utilisez Visual Studio 2015, la solution peut être légèrement différente des réponses précédentes. VS2015 crée un dossier caché .vs dans le même dossier que votre fichier de solution. Sous ceci se trouve un dossier de configuration contenant applicationhost.config. La suppression de ce fichier (ou du dossier entier .vs) puis le démarrage de VS2015 pour le recréer peuvent corriger cette erreur.

essayez (en tant qu’administrateur élevé)

 netsh http delete urlacl url=http://*:62940/ 

J’ai aussi eu cette erreur récemment. J’ai essayé toutes les corrections ci-dessus, mais aucune n’a fonctionné.

Pour le désactiver, tapez services.msc dans l’invite de commandes, puis cliquez avec le bouton droit de la souris et désactivez le partage de connexion Internet . J’ai aussi édité les propriétés pour désactiver au démarrage. Le mien ressemble maintenant à: capture d’écran de capture de services .

Je viens d’avoir un problème similaire. Je ne suis pas tout à fait sûr de savoir comment décrire le problème mais il semble que le nom d’hôte de la réservation soit incorrect. Essayez ceci dans une invite de commande élevée …

netsh http delete urlacl url=http://localhost:62940/

… puis …

netsh http add urlacl url=http://*:62940/ user=everyone

et redémarrez votre site. Ça devrait marcher.

J’ai fini par nettoyer le fichier de projet (csproj) et le fichier applicationhost.config (iis express) avec toutes les entrées concernant la configuration iis express. Après cela, cela a fonctionné.

Après avoir essayé un certain nombre de solutions suggérées sans succès, je viens de redémarrer mon PC. Après cela, le problème ne s’est plus produit.

Cela s’est passé avec moi lorsque j’essayais d’ accéder à mon site depuis un emplacement distant :

Au début, applicationhost.config (VS2015) contenait la norme:

  

Pour accéder à mon site depuis un emplacement distant du réseau, j’ai ajouté (étape 1):

  

Ensuite, je suis entré dans CMD avec les droits d’administrateur (étape 2):

 netsh http add urlacl url=http://*:64376/ user=Everyone 

Comme étape 3, je l’ai ajouté une règle au pare-feu.

 netsh advfirewall firewall add rule name=”IISExpressWeb” dir=in protocol=tcp localport=64376 profile=private,domain remoteip=localsubnet action=allow 

Ensuite, j’ai eu cette erreur en essayant de réexécuter la solution.

Solution: Je semblais avoir tout fait correctement, mais cela n’a pas fonctionné tant que je n’ai pas utilisé netsh également pour la règle localhost existante :

 netsh http add urlacl url=http://localhost:64376/ user=Everyone 

Maintenant, cela fonctionne à nouveau.

Si vous avez cela après avoir installé Visual Studio 2015 et que vous pouvez voir des messages d’erreur dans le journal des événements système tel que celui-ci: Unable to bind to the underlying transport for [::]:{your_port}. . The IP Listen-Only list may contain a reference ... Unable to bind to the underlying transport for [::]:{your_port}. . The IP Listen-Only list may contain a reference ... Unable to bind to the underlying transport for [::]:{your_port}. . The IP Listen-Only list may contain a reference ... alors vous pouvez manquer une entrée de registre.

Exécutez ceci sous l’invite de commande administrative: netsh http add iplisten ipaddress=:: pour le réparer.

J’ai trouvé la solution décrite en détail ici

J’ai rencontré ce même message d’erreur, mais il semble qu’il ait été produit à partir d’IIS Express. Cet article m’a aidé à le résoudre

TL; DR

Exécutez la commande suivante à partir d’une invite de commande administrative:

 > netsh http add iplisten ipaddress=:: 

Après que toutes les étapes énumérées ici ont échoué pour moi, je l’ai fait fonctionner en exécutant VS2015 en tant qu’administrateur.

Cela m’est arrivé sur Windows 10 et VS 2013. Apparemment, il existe un numéro de port maximum géré par IIS Express. Les ports au dessus de 62546 ne fonctionnent pas pour moi.

L’erreur peut être résolue si vous relancez simplement Visual Studio. Cela a le même effet que de redémarrer le processus Microsoft.VisualStudio.Web.Host.exe * 32.

Mon problème s’est avéré être que SSL était activé sur les parameters du projet. Je l’ai simplement désactivé car je n’avais pas besoin de SSL pour exécuter le projet localement.

Dans Visual Studio 2015:

  • Sélectionnez le projet dans l’explorateur de solutions.
  • Dans la fenêtre Propriétés, définissez SSL activé sur False.
  • J’ai pu exécuter le projet.

Dans ma situation, je recevais une erreur concernant le port 443 utilisé car il s’agissait du port défini sur l’URL SSL du projet.

Accédez au projet “Propriétés” => “Web”, et dans la section “Serveurs”, modifiez le port en un autre élément non utilisé et enregistrez-le. Vous serez invité à créer un répertoire virtuel et à cliquer sur “Oui”. Maintenant, lancez le projet et cela fonctionnera maintenant.

Dans mon cas, cela a fonctionné dans un premier temps et après un certain temps a cessé de fonctionner et IIS Express a signalé que le port était en cours d’utilisation.
netstat -ab montré que Chrome utilisait le port. Après avoir quitté Chrome, il a recommencé à fonctionner.
Je ne suis toutefois pas sûr que Chrome occupe ce port.

Cela m’est arrivé sur Windows 7 et VS 2013 lors de l’affichage d’un projet sur le navigateur après la construction. Je n’ai eu qu’à fermer le navigateur “Chrome” puis à m’assurer que le port n’est pas utilisé dans mes activités réseau en utilisant un utilitaire (Kaspersky), puis réessayé et fonctionne sans aucun problème.

Je l’écris pour information.

Supprimez le fichier dans le projet.

After Clean> Build> Proje Start

Exécution de netstat -abn J’ai remarqué que le logiciel “Duet Display” réservait des milliers de ports dans la plage ~ 51000.

La fermeture a résolu mon problème.

Parfois, cette erreur peut être une autre version de Visual Studio exécutée sur le même ordinateur.

On dirait que tout le monde a son propre problème Le simple partage de ce que j’ai fait pour résoudre ce problème dans VS2015 (Windows 8.1), ma solution a 6 sites Web (pas des applications Web)

  1. Ouvrez votre fichier de solution * .sln
  2. Changez votre chaîne de fichier de solution VWDPort = “34781” (rendez-la unique dans votre solution si vous avez plus de 1 site Web, j’ai fait +2) dans le bloc-notes.

Voir exemple de fichier de solution ProjectSection (WebsiteProperties):

 Project("{E24C65DC-7377-472B-9ABA-BC803B73C61A}") = "BOSTONBEANCOFFEE.COM", "Source_WebOfficeV4\BOSTONBEANCOFFEE.COM", "{5106A8F5-401B-4907-981C-F37784DC4E9D}" ProjectSection(WebsiteProperties) = preProject SccProjectName = ""$/PrismRMSystem/VS2012/WebOfficeV4.root/WebOfficeV4", IPYHAAAA" SccAuxPath = "" SccLocalPath = "..\.." SccProvider = "MSSCCI:Microsoft Visual SourceSafe" TargetFrameworkMoniker = ".NETFramework,Version%3Dv4.0" ProjectReferences = "{04e527c3-bac6-4082-9d39-aad8771b368e}|YBTools.dll;{5d52eaec-42fb-4313-83b8-69e2f55ebf14}|AuthorizeNet.dll;{d8408f53-8f1e-4a71-8b05-76023b09b716}|AuthorizeNet.Helpers.dll;{77ebd08a-de0f-4793-b436-fad6980863e6}|WEBCUSTCONTROLS.dll;" Debug.AspNetComstackr.VirtualPath = "/BOSTONBEANCOFFEE.COM" Debug.AspNetComstackr.PhysicalPath = "Source_WebOfficeV4\BOSTONBEANCOFFEE.COM\" Debug.AspNetComstackr.TargetPath = "PrecomstackdWeb\BOSTONBEANCOFFEE.COM\" Debug.AspNetComstackr.Updateable = "true" Debug.AspNetComstackr.ForceOverwrite = "true" Debug.AspNetComstackr.KeyFile = "Key\StrongKey.snk" Debug.AspNetComstackr.DelaySign = "false" Debug.AspNetComstackr.AllowPartiallyTrustedCallers = "false" Debug.AspNetComstackr.FixedNames = "true" Debug.AspNetComstackr.Debug = "True" Release.AspNetComstackr.VirtualPath = "/BOSTONBEANCOFFEE.COM" Release.AspNetComstackr.PhysicalPath = "Source_WebOfficeV4\BOSTONBEANCOFFEE.COM\" Release.AspNetComstackr.TargetPath = "PrecomstackdWeb\BOSTONBEANCOFFEE.COM\" Release.AspNetComstackr.Updateable = "true" Release.AspNetComstackr.ForceOverwrite = "true" Release.AspNetComstackr.KeyFile = "Key\StrongKey.snk" Release.AspNetComstackr.DelaySign = "false" Release.AspNetComstackr.AllowPartiallyTrustedCallers = "false" Release.AspNetComstackr.FixedNames = "true" Release.AspNetComstackr.Debug = "False" VWDPort = "34781" SlnRelativePath = "Source_WebOfficeV4\BOSTONBEANCOFFEE.COM\" EndProjectSection 

Dans mon cas, j’ai essayé de changer l’URL des propriétés du projet, de redémarrer VS, de redémarrer l’ordinateur, rien ne m’a aidé, seule cette manipulation de fichier SLN a résolu mon problème.

Pour moi, ce problème était entièrement lié à une installation cassée des outils Oracle ODP pour VS. J’ai désinstallé et réinstallé et tout fonctionnait à nouveau.

Dans Visual Studio 2015:

  • Trouvez votre page de démarrage dans votre projet (par exemple: mypage.aspx), puis cliquez dessus avec le bouton droit.
  • Cliquez sur Définir comme page de démarrage.
  • Cliquez avec le bouton droit sur le projet.
  • Cliquez sur Propriétés.
  • Cliquez sur l’onglet Web à gauche.
  • Dans URL du projet, entrez un autre port, tel que: http: // localhost: 1234 /
  • Dans Action de démarrage, sélectionnez Page spécifique: mypage.aspx ou sélectionnez URL spécifique: http: // localhost: 1234 / mypage.aspx? Myparam = xxx

Et dans mon cas, il était avéré que IIS n’était pas activé dans le Panneau de configuration sous Windows. Image de référence, car SO ne me laissera pas télécharger

Dans VS2017. J’ai dû modifier mon fichier .sln et mettre à jour le paramètre VWDPort = “5010” . Aucune des autres solutions affichées ici n’a fonctionné.

J’ai résolu ce problème en tuant toutes les instances de iexplorer et iexplorer * 32. Il semble qu’Internet Explorer soit encore en mémoire en maintenant le port ouvert, même si la fenêtre de l’application était fermée.

Dans mon cas, le paramètre Remplacer l’URL racine de l’application était coché, dans l’onglet Properties -> Web . Je l’utilisais précédemment lorsque j’exécutais VS en tant qu’administrateur, mais maintenant que je l’exécute dans un compte non administrateur, cela provoque l’erreur.

Rien de ce qui précède n’a fonctionné pour moi, mais la solution ici https://forums.asp.net/t/1979442.aspx?Cannot+change+the+project+URL+in+project+properties a fait.

Une fois le fichier de solution ouvert dans le bloc-notes, j’ai effectué une recherche et un remplacement du port à l’origine du problème, l’ai enregistré et rouvert la solution dans Visual Studio. La première fois, j’ai choisi un numéro de port qui était à seulement 1 de celui qui causait mon problème et j’ai toujours la même erreur. Lorsque j’ai changé de port, quelque 10 000 unités ont fonctionné. Je ne sais pas si cela fait une différence.