La création d'un répertoire virtuel a échoué avec l'erreur


89

Je ne peux pas résoudre ce problème

entrez la description de l'image ici

Je suggère que je dois changer de c:\Windows\System32\drivers\etc\hostsfichier et ajouter après

# localhost name resolution is handled within DNS itself.

la ligne suivante:

127.0.0.1       mysite.dev

mais ça n'aide pas. Aucune suggestion?

Une erreur se produit lorsque j'essaye d'ouvrir un projet de site Web dans Microsoft Visual Studio 2012.



C'est le deuxième ou le troisième lien google que j'ai obtenu en recherchant une solution sur Internet. Ce n'est pas ce dont j'ai besoin.
Dmytro

Réponses:


167

Le plus souvent, du moins dans mon cas, cela se produit lorsqu'un *.csproj.userfichier se trouve dans le répertoire du projet et qu'il contient <UseIISExpress>true</UseIISExpress>.

Alternativement, comme mentionné par Zachary Cutler, vous pouvez aussi simplement: fermer Visual Studio, supprimer le *.csproj.userfichier et rouvrir Visual Studio . Cela forcera VS à reconstruire le fichier.


1
cela ne fonctionne pas pour moi, après la mise à jour vs2017 15.7.1, j'ai eu ce problème.
Marsen Lin

Merci beaucoup!
Reuben Tanner

2
Cela n'a pas fonctionné pour moi. J'ai supprimé le .vsdossier. supprimé *.csproj.useret donne toujours la même erreur.
Zapnologica

1
cela a également fonctionné pour moi, je viens de supprimer le fichier [myproj] .csproj.user et il a été chargé - c'était dans VS2019 - fonctionnant en mode administrateur
Mark

33

J'ai déjà trouvé la solution. J'ai juste eu à éditer le C:\Users\Administrator\Documents\IISExpress\config\applicationhost.configfichier, en ajoutant mon site au <sites>node.


Au cas où ce ne serait pas la réponse pour vous et si vous vous trouvez dans ma situation, j'ai supprimé le répertoire .vs pour vider le cache et je n'ai pas remarqué que Visual Studio avait changé ma configuration de construction par défaut en une configuration générée automatiquement qui était configuré pour utiliser IISExpress. Donc, si vous aviez un projet qui fonctionnait bien et que le chargement cesse ensuite, je vous suggère avant de faire quoi que ce soit d'autre pour vérifier la configuration de construction (ce que j'ai bien sûr échoué à faire)
saminpa

Oups, alors que mon précédent commentaire `` utile '' était exact, ce n'était pas la cause première du message d'erreur cryptique. Ce serait le fait que le dossier .vs recréé automatiquement hérite du cryptage NTFS. Revenez à la normale sans avoir besoin de modifier le fichier de projet après avoir déchiffré ce dossier.
saminpa le

Fonctionne même après 6 ans. J'ai eu ce problème avec la dernière version de vs2017. Mais résolu le problème en utilisant les informations ci-dessus.
Awais

Quand utilise-t-on local par applicaionhost.configrapport à celui du dossier solution?
Zapnologica

19

Vous pouvez choisir d'installer IIS localement et de modifier quelques balises sur le fichier .csproj. Ouvrez votre fichier csproj et allez à la section <VisualStudio>puis recherchez la balise <UseIIS>True</UseIIS> qu'elle doit être définie sur true, puis allez dans tag: <IISUrl>et configurez avec l'adresse URL où l'application sera hébergée pour les tests:

<VisualStudio>
      <FlavorProperties GUID="{349c5851-65df-11da-9384-00065b846f21}">
        <WebProjectProperties>
          <UseIIS>True</UseIIS>
          <AutoAssignPort>False</AutoAssignPort>
          <DevelopmentServerPort></DevelopmentServerPort>
          <DevelopmentServerVPath>/</DevelopmentServerVPath>
          **<IISUrl>http://localhost/myWebSiteAppSample</IISUrl>**
          <NTLMAuthentication>False</NTLMAuthentication>
          <UseCustomServer>False</UseCustomServer>
          <CustomServerUrl>
          </CustomServerUrl>
          <SaveServerSettingsInUserFile>False</SaveServerSettingsInUserFile>
        </WebProjectProperties>
      </FlavorProperties>
    </VisualStudio>

Et c'est. Vous pouvez maintenant charger votre projet normalement.


C'est drôle, c'est la réponse à mon cas.
coffekid

3
Avec une note: les **astérisques ne doivent pas être dans le fichier. Bien sûr.
ErikE

16

Le problème serait que la configuration de votre projet soit exécutée dans l'IIS local et que l'URL spécifiée n'existe pas.

Il existe des options que vous pouvez faire pour résoudre le problème.

Option 1 : (utiliser IIS Express)

1.) Ouvrez le fichier .csproj de votre projet Web au format XAML ou dans le bloc-notes.

2.) Trouvez ces propriétés et définissez-les selon vos préférences.

UseIIS = faux

UseIISExpress = true

et c'est tout.

Option 2 : (utiliser IIS local)

Suivez les étapes de l'option 1 mais modifiez les propriétés suivantes.

UseIIS = vrai

IISUrl = https: // localhost

UseIISExpress = false


Option 1 ne fonctionne pas
Metin Atalay

L'option 2 a fonctionné pour moi, il fallait juste définir UseIIS = true
Joshlo

Option 2 a fonctionné :)
Senura Dissanayake

9

Le problème peut être résolu en supprimant le dossier nommé .vs dans le répertoire du projet.

Cela résout le problème car lors de l'ouverture du projet après la suppression du fichier .vs, il crée le même dossier avec la configuration du sous-dossier et le dossier avec le nom du projet.

L'hôte d' application du dossier de configuration contient les paramètres nécessaires pour exécuter le projet avec succès.


6

Je suis juste allé dans le répertoire nommé dans l'erreur et j'ai renommé applicationhost.config et redémarré et VS a créé un nouveau fichier et a bien fonctionné.


2
  • J'ai essayé plusieurs approches mentionnées dans les réponses, mais ce qui a finalement fonctionné pour moi a été d'échanger le <IISUrl>de .csprojavec <CustomServerUrl>.

Éditer :

  • Ce qui précède n'a pas résolu la cause première du problème pour moi. Cependant, si vous avez récemment effectué une mise à jour de Windows, cela peut peut-être être la raison du problème. Essayez de l'exécuter netsh http add iplisten 0.0.0.0et voyez si cela résout le problème.

J'espère que cela aiderait quelqu'un qui cherche encore un moyen.


1
De toutes les choses (et je veux dire TOUTES), c'est ( <CustomServerUrl>) celle qui a finalement fait l'affaire pour moi. Merci beaucoup!
Ash

1

Je ne sais pas pourquoi, car mon applicationhost.configfichier était complètement absent de mon C:\Users\Administrator\Documents\IISExpress\config\dossier.

Le copier / coller C:\inetpub\history\applicationhost.configdans ce dossier semblait résoudre le problème pour moi.

J'ai l'idée d'ici .


Dans mon cas, le fichier a été corrompu. je l'ai donc supprimé et remplacé par un fichier applicationhost.config trouvé lors de la recherche du système. Je n'ai pas le droit d'administrateur, je ne peux donc pas accéder à inetpub \ history. Je pense que Visual studio attend toujours ce fichier de configuration, mais après cela, même si j'ai supprimé le fichier applicationhost.config à plusieurs reprises de l'emplacement IISExpress \ config VS a continué à le créer. On dirait que parfois les paramètres sont corrompus, mais une fois qu'ils sont en ligne avec les bons paramètres, VS prend en charge tous les paramètres.
kumar chandraketu

1
  1. Activez les fonctionnalités Windows "Services Internet" dans le panneau de configuration.
  2. Ouvrez le fichier ".csproj" et recherchez
  3. Modifiez cette ligne en fonction de vos besoins. http: // localhost: 777 /
  4. Ouvrez le projet / la solution maintenant
  5. Si le chargement échoue à nouveau, faites un clic droit sur la solution et sélectionnez «Recharger le projet».

1

Je sais que c'est probablement un événement rare, mais j'ai pensé que je le mettrais ici:

Mon csprojfichier était réglé sur "lecture seule" (ne me demandez pas comment j'ai réussi cela), mais après avoir désactivé l'accès "lecture seule", tout allait bien. (VS2017)


0

J'étais confronté au même problème en raison de la modification de mon mot de passe réseau.J'ai changé mon mot de passe de connexion NetExtendor mais je dois me connecter à mon ordinateur portable avec l'ancien mot de passe.

Essayez ces étapes pour résoudre ce problème:

connectez-vous à l'ordinateur avec le mot de passe qui fonctionne Connectez-vous à vpn avec le mot de passe qui fonctionne ctl-alt-del pour verrouiller le PC, puis utilisez le nouveau mot de passe pour le déverrouiller

Cela a fonctionné pour moi :-)

Merci!


0

Pas exactement la même erreur, mais j'ai été conduit à cette réponse puisque la première moitié de l'erreur correspondait. Votre fichier applicationhost.config peut être simplement en lecture seule. Cela a résolu l'erreur pour moi. Cette erreur appelle le fichier spécifiquement, vous devriez donc pouvoir le trouver facilement.


0

Mon problème était avec Windows 10 Defender. J'avais donné l'autorisation à IIS dans le passé, mais il semble qu'il l'ignore maintenant. Je l'examinerai plus tard, mais pour l'instant, j'ai désactivé l'accès contrôlé aux dossiers et cela a fonctionné.


0

Je voulais ouvrir un projet existant de Visual Studio 2017 dans VS 2019 et j'ai rencontré le même problème. Je trouve que c'est un problème lié à la version. La solution est la suivante: Créez un nouveau projet dans le nouveau VS et copiez les codes de l'ancien VS.


Bienvenue à SO! Dans la question, il n'est fait mention d'aucun changement sur la version VS. Lorsque vous publiez une réponse, vérifiez que vous répondez à la question. Sinon, créez simplement une question avec ce problème et répondez vous-même, cela aidera la communauté.
David García Bodego

0

Essayez de déchiffrer le fichier applicationhost.config. Cela a fonctionné pour moi.


-1

Voici donc les étapes pour y remédier:

  1. Allez où se trouve votre fichier .csproj. Il s'agit généralement d'un répertoire sous la solution (.sln)
  2. Faites un clic droit et ouvrez avec un éditeur de texte (bloc-notes)
  3. Recherchez la balise IISUrl et remplacez son contenu par http: // localhost: (YourPortNumber)
  4. Enregistrez et rechargez votre projet!
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.