web-dev-qa-db-fra.com

Impossible de lancer le IIS Serveur Web Express, échec d'enregistrement de l'URL, accès 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 de lancer le projet, une fenêtre contextuelle s'affiche:

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 totalementinhabituel mais j'ai essayé beaucoup de suggestions sans succès:

  1. %userprofile%\Documents\IISExpress\ supprimé, essayé de courir.

  2. netsh http add urlacl url=http://localhost:62940/ user=everyone, redémarré et essayé de courir. (En fait, user=Alla depuis Windows suédois).

  3. netsh http delete urlacl url=http://localhost:62940/, redémarré et remplacé de <binding protocol="http" bindingInformation="*:62940:localhost /> par <binding protocol="http" bindingInformation="*:62940:/> dans %userprofile%\Documents\IISExpress\config\applicationhost.config et tenté de s'exécuter. (Le message d'erreur a été modifié pour indiquer ... URL "http://*:62940/" ....

  4. Réinstallé IIS 8.0 Express

  5. Réinstallé Visual Studio 2013

Je suis au bout du rouleau, qu'est-ce que je fais de travers?

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

Edit 2: Le port 62940 semble être libre. L'exécution de netstat ne montre 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 pas l'avoir touché pendant quelques mois. Cela a fonctionné mais je ne sais pas pourquoi.

121
Linus

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

J'ai fait les étapes suivantes:

1 - Faites un clic droit sur le projet.
2 - Allez aux propriétés.
3 - Allez sur l’onglet Serveur.
4 - Dans la section des onglets, changez l’URL du projet pour un autre port, tel que 8080 ou 3000.

Bonne chance!

75
Francisco

Le moyen idéal pour résoudre ce problème consiste à utiliser l'icône IIS Express dans la barre des tâches pour arrêter le site Web à l'origine du problème. Pour ce faire, cliquez sur la petite flèche pointant vers le haut, située à droite de la barre des tâches, puis cliquez avec le bouton droit de la souris sur l'icône IIS Express. Cela fera apparaître une petite fenêtre vous montrant les sites Web que IIS Express est en cours d'exécution ...

 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 en bas de la fenêtre pour arrêter tous les sites Web.

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

Si cela échoue, vous devez le faire de manière sale. Ouvrez le Gestionnaire de tâches Windows et arrêtez le processus Microsoft.VisualStudio.Web.Host.exe*32. Vous pourrez ensuite exécuter le projet correctement. Notez que cela va tuer IIS Express complètement, ce qui signifie que tous les sites Web vont s’arrêter. Vous devrez donc les redémarrer dans VS si vous souhaitez déboguer d’autres. Essayez d’abord la méthode des icônes contextuelles, 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.

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

58
Avrohom Yisroel

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 sous le même dossier que votre fichier de solution. Sous cela se trouve un dossier de configuration contenant applicationhost.config. La suppression de ce fichier (ou de l'intégralité du dossier .vs), puis le démarrage de VS2015 pour le recréer peuvent corriger cette erreur.

41
Cayne

essayer (en tant qu'administrateur élevé)

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

Vous avez cette erreur aussi ces derniers temps. J'ai essayé tous les correctifs ci-dessus, mais aucun n'a fonctionné.

Pour le désactiver, tapez services.msc dans la commande Invite, puis cliquez avec le bouton droit de la souris et désactivez Internet Connection Sharing. J'ai également édité les propriétés pour le désactiver au démarrage. Le mien ressemble à maintenant: capture de services capture .

30
Michael.

Je viens d'avoir un problème similaire. Je ne sais pas trop comment décrire l'erreur réelle, mais il semble que le nom d'hôte indiqué dans 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.

24
ScaryLooking

Cela m'est arrivé lorsque j'essayais de accéder à mon site depuis un emplacement distant:

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

<binding protocol="http" bindingInformation="*:64376:localhost" />

Afin d'accéder à mon site depuis un emplacement distant sur le réseau, j'ai ajouté (étape 1):

<binding protocol="http" bindingInformation="*:64376:192.168.10.132" />

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

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

À l'étape 3, j'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 d'exécuter à nouveau la solution.

Solution: Il me semblait avoir tout fait correctement, mais cela n'a pas fonctionné tant que je n'ai pas exécuté netsh, également pour la règle localehost existante

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

Maintenant, ça marche encore.

16
Arjan

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

14
Sven Sönnichsen

Après avoir essayé plusieurs solutions suggérées sans succès, je viens de redémarrer mon PC. Après cela, le problème ne s'est plus posé.

13
Dimitri C.

J'ai rencontré le même message d'erreur, mais il semble que celui-ci ait été généré à partir de 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=::
10
Micah

Si vous rencontrez ce problème après l'installation de Visual Studio 2015 et que vous pouvez voir des messages d'erreur dans le journal des événements système, tels que celui-ci: Unable to bind to the underlying transport for [::]:{your_port}. . The IP Listen-Only list may contain a reference ..., il se peut qu'il manque une entrée de registre.

Exécutez ceci sous la commande administrative Invite: netsh http add iplisten ipaddress=:: pour le réparer.

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

9
Ignas Vyšnia

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

8
maxmantz

Cela m'est arrivé sous Windows 10 et VS 2013 . Apparemment, il existe un numéro de port maximal IIS géré par Express. Les ports supérieurs à 62546 ne fonctionnent pas pour moi.

4
Renato Chencinski

Ouais, je suis d'accord, les réponses les plus fréquentes sont vraiment des solutions pro, 

en voici un pour les intermédiaires,

Solutions Explorer

Clic droit sur le projet sélectionner Décharger le projet

Cliquez à nouveau avec le bouton droit de la souris et sélectionnez Modifier le nom du projet.csproj

enlever ces 3 lignes

<DevelopmentServerPort>0</DevelopmentServerPort>
<DevelopmentServerVPath>/</DevelopmentServerVPath>
<IISUrl>http://localhost:62940/</IISUrl>

Sauvegardez et rechargez le projet Et vous êtes prêt à partir

2
User6007962

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

2
meJustAndrew

Mon problème s'est avéré que j'avais SSL activé sur les paramètres du projet. J'ai simplement désactivé ceci 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 mon cas, je recevais une erreur sur le port 443 en cours d'utilisation car il s'agissait du port défini sur l'URL SSL du projet.

2
Matt Stannett

En exécutant netstat -abn, j'ai remarqué que le logiciel "Duet Display" réservait des milliers de ports dans la gamme ~ 51000.

La fermer a résolu mon problème.

1
Loris

Dans mon cas, cela a fonctionné au début et après un moment, il a cessé de fonctionner et IIS Express a signalé que le port était en cours d'utilisation.
netstat -ab a montré que Chrome utilisait le port. Après avoir quitté Chrome, cela a recommencé à fonctionner.
Je ne sais pas cependant pourquoi Chrome occuperait ce port.

1
Daniel Hilgarth

Dans Visual Studio 2015:

  • Trouvez votre page de démarrage dans votre projet (par exemple: mypage.aspx), et rightcliquez dessus. 
  • Cliquez sur Définir comme page de démarrage.
  • Faites un clic droit sur le projet. 
  • Cliquez sur Propriétés.
  • Cliquez sur l'onglet Web à gauche.
  • Dans l'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 URL spécifique: http: // localhost: 1234/mypage.aspx? Myparam = xxx
1
live-love

Je l'écris pour information.

Supprimez le fichier dans le projet.

Après le nettoyage> Construire> Début du projet

1
Oğuzhan Sari

Accédez au projet "Propriétés" => "Web". Dans la section "Serveurs", remplacez le port par un autre paramètre 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.

1
Damitha

Cela m'est arrivé sous Windows 7 et VS 2013 lors de l'affichage d'un projet sur le navigateur après la construction. Je n'avais qu'à fermer le navigateur "Chrome", puis à vérifier que le port n'est pas utilisé dans mes activités réseau à l'aide d'un utilitaire (Kaspersky), puis à nouveau essayé et sans problème.

1
hsobhy

Dans mon cas, j'avais le paramètre Remplacer l'URL racine de l'application vérifié, sur l'onglet Properties-> Web. J'utilisais cela 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.

0
Sean

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

0
Worthy7

Dans VS2017. Je devais modifier mon fichier .sln et mettre à jour le paramètre VWDPort = "5010" . Aucune des autres solutions publiées ici n'a fonctionné.

0
Enkode

J'ai résolu ce problème en éliminant toutes les occurrences de iexplorer et iexplorer * 32. Il semble qu'Internet Explorer était toujours en mémoire, le port étant ouvert alors que la fenêtre de l'application était fermée. 

0
k rey

J'ai eu ce problème avec JetBrains Rider, en particulier pour les ports 80 et 90 bits, il fonctionnait avec d'autres ports ainsi que Visual Studio.

après avoir exécuté en tant qu'administrateur, le problème a été résolu.

0
workabyte

Et dans mon cas, il est apparu que IIS n'était pas activé dans le Panneau de configuration sous Fonctionnalités Windows . Image de référence, car SO ne me permettait pas de télécharger

0
WJK

On dirait que tout le monde a son propre problème Tout en partageant ce que j'ai fait pour résoudre ce problème dans VS2015 (Windows 8.1), ma solution comporte 6 sites Web (et non des applications Web). 

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

Voir un 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.AspNetCompiler.VirtualPath = "/BOSTONBEANCOFFEE.COM"
    Debug.AspNetCompiler.PhysicalPath = "Source_WebOfficeV4\BOSTONBEANCOFFEE.COM\"
    Debug.AspNetCompiler.TargetPath = "PrecompiledWeb\BOSTONBEANCOFFEE.COM\"
    Debug.AspNetCompiler.Updateable = "true"
    Debug.AspNetCompiler.ForceOverwrite = "true"
    Debug.AspNetCompiler.KeyFile = "Key\StrongKey.snk"
    Debug.AspNetCompiler.DelaySign = "false"
    Debug.AspNetCompiler.AllowPartiallyTrustedCallers = "false"
    Debug.AspNetCompiler.FixedNames = "true"
    Debug.AspNetCompiler.Debug = "True"
    Release.AspNetCompiler.VirtualPath = "/BOSTONBEANCOFFEE.COM"
    Release.AspNetCompiler.PhysicalPath = "Source_WebOfficeV4\BOSTONBEANCOFFEE.COM\"
    Release.AspNetCompiler.TargetPath = "PrecompiledWeb\BOSTONBEANCOFFEE.COM\"
    Release.AspNetCompiler.Updateable = "true"
    Release.AspNetCompiler.ForceOverwrite = "true"
    Release.AspNetCompiler.KeyFile = "Key\StrongKey.snk"
    Release.AspNetCompiler.DelaySign = "false"
    Release.AspNetCompiler.AllowPartiallyTrustedCallers = "false"
    Release.AspNetCompiler.FixedNames = "true"
    Release.AspNetCompiler.Debug = "False"      
    VWDPort = "34781"
    SlnRelativePath = "Source_WebOfficeV4\BOSTONBEANCOFFEE.COM\"
EndProjectSection

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

0
Eugene Bosikov

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

0
Abdisamad Khalif