La creación de un directorio virtual falló con el error

89

No puedo resolver este problema

ingrese la descripción de la imagen aquí

Sugiero que tenga que cambiar el c:\Windows\System32\drivers\etc\hostsarchivo y agregar después

# localhost name resolution is handled within DNS itself.

la siguiente línea:

127.0.0.1       mysite.dev

pero no ayuda. ¿Alguna sugerencia?

Se produce un error cuando intento abrir el proyecto del sitio web en Microsoft Visual Studio 2012.

Dmytro
fuente
Es el segundo o tercer enlace de Google, lo obtuve mientras buscaba una solución en Internet. No es lo que necesito.
Dmytro

Respuestas:

167

La mayoría de las veces, al menos en mi caso, esto sucede cuando un *.csproj.userarchivo está en el directorio del proyecto y lo tiene <UseIISExpress>true</UseIISExpress>.

Alternativamente, como lo mencionó Zachary Cutler , también puede simplemente: cerrar Visual Studio, eliminar el *.csproj.userarchivo y volver a abrir Visual Studio . Esto obligará a VS a reconstruir el archivo.

pim
fuente
1
esto no funciona para mí, después de la actualización vs2017 15.7.1, tengo este problema.
Marsen Lin
Muchas gracias!
Reuben Tanner
2
Esto no funcionó para mí. He eliminado la .vscarpeta. eliminado *.csproj.usery todavía da el mismo error.
Zapnologica
1
esto también funcionó para mí, acabo de eliminar el archivo [myproj] .csproj.user y se cargó - esto fue en VS2019 - ejecutándose en modo de administración
Mark
33

Ya encontré la solución. Solo tuve que editar el C:\Users\Administrator\Documents\IISExpress\config\applicationhost.configarchivo, agregando mi sitio al <sites>nodo.

Dmytro
fuente
En caso de que esta no sea la respuesta para usted y si se encuentra en mi situación, eliminé el directorio .vs para borrar la caché y no noté que Visual Studio había cambiado mi configuración de compilación predeterminada a una generada automáticamente que era configurado para usar IISExpress. Entonces, si tenía un proyecto que funcionaba bien y luego deja de cargarse, le sugiero que, antes de hacer cualquier otra cosa, verifique la configuración de compilación (que por supuesto no
pude
Vaya, aunque mi comentario anterior "útil" era correcto, no era la causa principal del críptico mensaje de error. Ese sería el hecho de que la carpeta .vs recreada automáticamente heredó el cifrado NTFS. Vuelve a la normalidad sin necesidad de editar el archivo del proyecto después de descifrar esa carpeta.
saminpa
Funciona incluso después de 6 años. Tengo este problema con la última versión de vs2017. Pero lo resolvió usando la información anterior.
Awais el
¿Cuándo se usa el local applicaionhost.configfrente al que está en la carpeta de la solución?
Zapnologica
19

Puede optar por instalar IIS localmente y editar un par de etiquetas en el archivo .csproj. Abra su archivo csproj y vaya a la sección, <VisualStudio>luego busque la etiqueta <UseIIS>True</UseIIS> que debe establecerse como verdadera, luego vaya a la etiqueta: <IISUrl>y configure con la dirección URL donde se alojará la aplicación para la prueba:

<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>

Y eso es. Ahora puede cargar su proyecto normalmente.

willyMon
fuente
Es curioso, esta es la respuesta para mi caso.
coffekid
3
Con una nota: los **asteriscos no deben estar en el archivo. Por supuesto.
ErikE
16

El problema sería que la configuración de su proyecto se ejecutará en el IIS local y la URL especificada no existe.

Hay opciones que puede hacer para solucionar el problema.

Opción 1 : (use IIS Express)

1.) Abra el archivo .csproj de su proyecto web como XAML o en el bloc de notas.

2.) Encuentre estas propiedades y configúrelas según sus preferencias.

UseIIS = falso

UseIISExpress = verdadero

y eso es.

Opción 2 : (usar IIS local)

Siga los pasos de la opción 1 pero cambie las siguientes propiedades.

UseIIS = verdadero

IISUrl = https: // localhost

UseIISExpress = falso

pampi
fuente
La opción 1 no funciona
Metin Atalay
La opción 2 funcionó para mí, solo tenía que establecer UseIIS = true
Joshlo
Opción 2
Funcionó
9

El problema se puede solucionar eliminando la carpeta llamada .vs en el directorio del proyecto.

Esto resuelve el problema porque al abrir el proyecto después de eliminar el archivo .vs, crea la misma carpeta con la configuración de la subcarpeta y la carpeta con el nombre del proyecto.

La carpeta de configuración applicationhost contiene la configuración necesaria para ejecutar el proyecto con éxito.

Ashran Haider
fuente
6

Simplemente fui al directorio nombrado en el error y renombré applicationhost.config y reinicié y VS creó un nuevo archivo y funcionó bien.

Pat Capozzi
fuente
2
  • Intenté varios enfoques mencionados en las respuestas, pero lo que finalmente funcionó para mí fue cambiar el <IISUrl>de .csprojpor <CustomServerUrl>.

Editar:

  • Lo anterior no resolvió la causa raíz del problema para mí. Sin embargo, si ha realizado una actualización de Windows recientemente, tal vez sea la razón que está causando el problema. Intente ejecutar netsh http add iplisten 0.0.0.0y vea si resuelve el problema.

Espero que esto ayude a alguien que todavía está buscando una manera.

Huzaim
fuente
1
De todas las cosas (y me refiero a TODAS), esta ( <CustomServerUrl>) es la que finalmente me hizo el truco. ¡Muchas gracias!
Ash
1

No sé por qué, mi applicationhost.configarchivo estaba completamente perdido en mi C:\Users\Administrator\Documents\IISExpress\config\carpeta.

Copiar / pegar C:\inetpub\history\applicationhost.configen esa carpeta pareció solucionar el problema por mí.

Tengo la idea de aquí .

Daniel Szabo
fuente
En mi caso, el archivo se corrompió. así que lo eliminé y lo reemplacé con un archivo applicationhost.config encontrado en la búsqueda del sistema. No tengo derechos de administrador, así que no puedo acceder a inetpub \ history. Creo que Visual Studio siempre espera este archivo de configuración, pero después de eso, aunque eliminé repetidamente el archivo applicationhost.config de la ubicación de IISExpress \ config, VS siguió creándolo. Parece que en algún momento la configuración se corrompe, pero una vez que está en línea con la configuración correcta, VS se encarga de todas las configuraciones por sí solo.
kumar chandraketu
1
  1. Active las funciones de Windows "Servicios de información de Internet" en el panel de control.
  2. Abra el archivo ".csproj" y busque
  3. Modifique esta línea según sus requisitos. http: // localhost: 777 /
  4. Abra el proyecto / solución ahora
  5. Si no se pudo cargar de nuevo, simplemente haga clic derecho en la solución y seleccione "Recargar proyecto".
Vernie Namca
fuente
1

Sé que esto es probablemente una ocurrencia rara, pero pensé que lo pondría aquí:

Mi csprojarchivo estaba configurado como "solo lectura" (no me pregunten cómo lo logré), pero después de que desactivé el acceso de "solo lectura", todo estuvo bien. (VS2017)

Andy
fuente
0

Estaba enfrentando el mismo problema debido a que mi contraseña de red cambió. Cambié mi contraseña de inicio de sesión de NetExtendor, pero tengo que iniciar sesión en mi computadora portátil con la contraseña anterior.

Pruebe estos pasos para solucionar este problema:

inicie sesión en la computadora con cualquier contraseña que funcione inicie sesión en vpn con cualquier contraseña que funcione ctl-alt-del para bloquear la PC y luego use la nueva contraseña para desbloquearla

Funcionó para mí :-)

¡Gracias!

Rinki Barsainya
fuente
0

No es exactamente el mismo error, pero me llevaron a esta respuesta ya que la primera mitad del error coincidió. Su archivo applicationhost.config puede ser simplemente de solo lectura. Quitar eso resolvió el error para mí. Sin embargo, ese error llama al archivo específicamente, por lo que debería poder encontrarlo fácilmente.

Leland Daniel
fuente
0

Mi problema fue con Windows 10 Defender. Le había dado permiso a IIS en el pasado, pero parece que ahora lo está ignorando. Lo veré más tarde, pero por ahora deshabilité el acceso controlado a la carpeta y funcionó.

Steve Greene
fuente
0

Quería abrir un proyecto existente de Visual Studio 2017 en VS 2019 y encontré el mismo problema. Encuentro que es un problema relacionado con la versión. La solución es: crear un nuevo proyecto en el VS más nuevo y copiar los códigos del VS anterior.

Kousik Patra
fuente
¡Bienvenido a SO! En la pregunta, no se menciona ningún cambio en la versión VS. Cuando publique una respuesta, compruebe que está respondiendo a la pregunta. Si no es así, simplemente cree una pregunta con este problema y respóndase usted mismo, así ayudará a la Comunidad.
David García Bodego
0

Intente descifrar el archivo applicationhost.config. Eso funcionó para mí.

Fran
fuente
-1

Así que estos son los pasos para solucionarlo:

  1. Vaya donde está su archivo .csproj. Este suele ser un directorio debajo de la solución (.sln)
  2. Haga clic derecho y abra con un editor de texto (bloc de notas)
  3. Busque la etiqueta IISUrl y reemplace su contenido por http: // localhost: (YourPortNumber)
  4. ¡Guarda y recarga tu proyecto!
Hudson Nascimento
fuente