localhost se negó a conectar Error en Visual Studio


81

Copié mi archivo de solución de otro sistema e intenté ejecutarlo en mi máquina: para esto, fui a la carpeta del proyecto, borré el archivo de solución anterior y copié el nuevo.

Ahora, comenzó a darme error. conexión rechazada, etc. Entonces, obtuve una solución desde aquí: ¿Cómo resolver ERR_CONNECTION_REFUSED al intentar conectarse a localhost ejecutando IISExpress - Error 502 (No se puede depurar desde Visual Studio)?

De acuerdo con él, cambié el número de puerto de 1049 a 1052. Se cargó y se carga una de las páginas. Pero cuando ingresé las credenciales de inicio de sesión deseadas, se redirigió al puerto anterior nuevamente, así:

http://localhost:1049/Home/SearchFlight

y el error es:

 This site can’t be reached

 localhost refused to connect.
 Search Google for localhost 1049 Home Search Flight
 ERR_CONNECTION_REFUSED

Ahora, no sé qué hacer desde aquí. He cambiado el número de puerto a 1052 pero sigue apuntando a 1049. ¿Qué debo hacer ahora?

Respuestas:


109

Tuve un problema similar. Prueba esto y debería funcionar

  1. Vaya a la carpeta de su proyecto y abra la .vscarpeta (mantenga marcada la casilla de verificación de elemento oculto, ya que esta carpeta puede estar oculta a veces)

  2. En la .vscarpeta abre la configcarpeta

  3. ¿Ves ese applicationhost.configarchivo ahí? Borra esa cosa. (No se preocupe, se regenerará automáticamente una vez que vuelva a compilar el proyecto).


7
Esto funcionó para mí. Es posible que deba iniciar VS en modo Administrador.
WillC

4
Recibo el error "No se puede iniciar el servidor web IIS".
Baimyrza Shamyr

8
intenté esto, pero todavía aparece el mensaje "No se puede acceder a este sitio". (También intenté abrir en modo de administrador, no ayudó)
Nathan Tregillus

1
También funcionó para mí
Gags

6
No funcionó hasta el reinicio de VS 2017. No es necesario el modo de administrador.
MusicAndCode

49

Por lo general, en la máquina local recibimos errores como This site can't be reached localhost refused to connectporque tenemos una configuración de certificado autofirmado rota para IIS Express local. A veces sucede cuando cambia las URL launchSettings.jsono nunca configuró certificados autofirmados en esta máquina.

Para arreglar el certificado autofirmado en la máquina local , necesita: 

  1. Eliminar la carpeta .vs (requiere cerrar Visual Studio 2017)
  2. Ejecute estos comandos en cmd As Administrator:

    cd "C:\Program Files (x86)\IIS Express"

    IisExpressAdminCmd.exe setupsslUrl -url:https://localhost:12345/ -UseSelfSigned

  3. Asegúrese de ejecutar VS2017 As Administratory verifique si se solucionó el problema

Nota: https://localhost:12345/es lo que está en su launchSettings.jsonparaHTTPS


3
esto realmente ayudó. Tuve un problema combinado: Fiddler ejecutándose y falta el certificado.
Diomos

2
Este fue el ganador para mí. Agregué un certificado de openssl para una aplicación diferente en un puerto diferente en localhost, y eliminó el certificado autofirmado que estaba usando para iis express. La reparación del certificado autofirmado en el puerto localhost específico lo solucionó.
Dr. C. Hilarius

1
¡Arreglado, muchas gracias! He visto a mucha gente que dice eliminar la carpeta .vs, pero esta es la primera respuesta que he visto sobre el certificado ssl, que fue el factor decisivo para mí.
tagustini

1
en mi caso tuve que ejecutar en un puerto diferente, en 44343. IisExpressAdminCmd.exe setupsslUrl -url: localhost: 44343 -UseSelfSigned
Vitaliy Markitanov

Mi aplicación funcionaba bien hasta hace poco, comencé a recibir mensajes de "no se puede acceder a este sitio" en el navegador ... esto resolvió mi problema
useruser00 hace

29

Cambiar el número de puerto ha resuelto el problema

ingrese la descripción de la imagen aquí


Eso se soluciona momentáneamente. Me aburro de cambiar el puerto cada vez que ejecuto el proyecto.
jstuardo

Usando VS 2019 Preview 2. Obtuve el mismo error y lo solucioné cambiando a la URL del proyecto anterior. (Dios sabe por qué) :-)
netchicken

De hecho, tuve que eliminar toda la carpeta .vs y cambiar el número de puerto, pero al menos finalmente funcionó
William

11

Simplemente elimine la carpeta de objetos (obj) en la carpeta del proyecto, luego ejecute la aplicación y funcionará bien. Pasos:

  1. Haga clic derecho en la carpeta del proyecto y luego seleccione "Abrir carpeta en el Explorador de archivos".
  2. Luego busque la carpeta Obj y elimínela.
  3. Ejecute la aplicación.

8

Yo tuve el mismo problema. Eliminar la .vscarpeta (incluido todo el contenido, la carpeta puede estar oculta) funcionó para mí.


Cuando copiamos todo el proyecto a otra PC para que el proyecto también maneje nuestra propia configuración .vs, elimine esa carpeta oculta, vuelva a abrir el proyecto en una nueva PC, estará funcionando.
Osify

8

Desafortunadamente, ninguna de estas respuestas funcionó para mí. Esta respuesta finalmente lo hizo solo para Chrome. Desafortunadamente, debes hacerlo cada vez:

  1. Abra esto en su navegador: chrome: // net-internals / # hsts
  2. Ir a Eliminar políticas de seguridad de dominio
  3. Ingrese "localhost"
  4. Reiniciar navegador

Google Chrome redirige localhost a https


Vaya, he estado tratando de solucionar este problema al intentar depurar en VSCode la última hora y media, finalmente lo hice.
Nard Dog

6

Resolví un problema similar al enumerar las direcciones IP vinculadas en una ventana de cmd que se ejecuta como administrador:

netsh http show iplisten

Luego, uno por uno, soplándolos a todos:

netsh http delete iplisten ipaddress=127.0.0.200
netsh http delete iplisten ipaddress=127.0.0.2
...

En un momento dado, agregué una reserva de URL para http://*:44300/y esto es lo que estaba causando que localhost no se conectara por mí. Ejecuté un comando similar al tuyo, ¡ netsh http delete urlacl http://*:44300/y localhost se conecta y depura como se esperaba ahora!
Quiver

5

Ejecuté mi Visual Studio como "Ejecutar como administrador" y esto resolvió mi problema.


Apostaría a que este es el caso el 90% de las veces. Tenga en cuenta que cuando instala una actualización de VS y hace clic en "Iniciar" al final de la instalación, NO se ejecutará como administrador. Me atrapa todo el tiempo.
moomoo

2

Tenía este problema y lo resolví cerrando todas las instancias abiertas de Visual Studio.


1
También es posible que dos instancias de Visual Studio con diferentes proyectos se estén ejecutando en el mismo puerto. Hacer que los puertos fueran diferentes funcionó para mí.
Ben

2

Vaya al panel de control> Programas y funciones> IISExpress> Reparar


Eliminar la carpeta .vs no me ayudó. Pero la reparación ayudó. Muchas gracias
Dmitresky

2

Si lo encontré fue porque había estado jugando con los netsh http addcomandos para que IIS Express fuera visible de forma remota.

Los síntomas fueron:

  • el sitio no podría conectarse en un navegador
  • el sitio no se iniciaba (haga clic con el botón derecho en IIS Express en la barra de tareas y faltaba)
  • si ejecuté Visual Studio como administrador, comenzaría en IIS Express y sería visible en el navegador

La solución fue enumerar todos los sitios vinculados:

netsh http show urlacl

luego elimine el que había agregado recientemente:

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


Además, eliminé localhostdel archivo .vs\config\application.configde la carpeta de solución oculta para el sitio:

<bindings>
    <binding protocol="http" bindingInformation="*:54321:" />
</bindings>

así que tuve que volver a poner eso:

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

Fantástica respuesta. En mi caso, estaba tratando de hacer que se pudiera acceder al sitio de forma remota usando ngrok para ese propósito. No funcionó para mí y lo dejé inaccesible para ese puerto en particular, olvidándome totalmente que durante el proceso eventualmente usé netsh http add. ¡Muchas gracias!
oneberenjena

1

Esto me sucedió en VS2017 v 15.6.7 usando .net core 2.0.

Cuando el proyecto se lanzó por primera vez, creó un certificado SSL para localhost y comenzó bien. Cuando desactivé SSL, seguí teniendo este problema.

Aparentemente, cuando desactiva SSL, los números de puerto se cambian y no todos los números de puerto se cambian al nuevo puerto. Asegúrese de que los números de puerto en Debug sean todos iguales. ingrese la descripción de la imagen aquí


1

Cambie el número de puerto y elimine la depuración del script (si está habilitada) para resolver en localhost.


1

Lo intenté todo, pero nada funcionó, pero esto funcionó. Si puede depurar en IIS local en lugar de Express, cambie las configuraciones como se muestra en la imagen a continuación. No olvide hacer clic en "Crear directorio virtual"

ingrese la descripción de la imagen aquí



1

Recientemente me encontré con este problema exacto e intenté la mayoría de las sugerencias, pero resultó que mi problema era algo diferente.

Nuestra aplicación tiene una sección que lo redirige a HTTPS si está en HTTP (sí, sé que hay mejores formas, pero esto es heredado). Además, hay un manejo especial de localhost cuando estás en modo dev que te redirige de nuevo a HTTP, aunque no sé por qué.

Tengo un nuevo requisito que requiere pruebas en HTTPS.

En una página web normal, cambiar http: // a https: // y llamar a Redirect funcionaría bien, pero en IISExpress está utilizando puertos personalizados. Entonces, por ejemplo, si está en https: // localhost: 44300, no puede simplemente cambiar a http: // localhost: 44300 b / c, ese puerto solo sirve https, no http.

Entonces, si tiene este problema y borró los archivos de configuración y no ayudó, verifique su código para ver si hay redireccionamientos. es posible que tenga algo que use una URL codificada o parcialmente codificada o una URL de un archivo de configuración que no haya actualizado a https.

Actualización: también sugiero borrar todos los archivos .suo y .user y alguien más sugirió borrar la carpeta obj /. Sugiero hacer esto con VS cerrado y luego reiniciar. Tuve muchos problemas con los valores de los puertos almacenados en caché cuando intenté configurar https: // y cambiar los puertos. También sugiero probar esta sugerencia para verificar que el puerto SSL esté dentro del rango correcto, aunque no sé si eso sigue siendo un requisito https://stackoverflow.com/a/24957146


1

El mismo problema aquí, pero creo que el mío se debió a la instalación de la última versión de Visual Studio y a tener las versiones 2015 y 2019 ejecutando la solución. Eliminé toda la carpeta .vs y reinicié Visual Studio y funcionó.

Creo que el problema es que hay varias configuraciones para cada versión de Visual Studio en la carpeta .vs y parece arruinarlo.



0

Para que esto funcione para mí, todo lo que tuve que hacer fue volver a crear el directorio virtual. Reinstalé Windows y luego retiré el proyecto de Git. Para hacer esto, haga clic con el botón derecho en el proyecto de la solución y elija Propiedades, luego vaya a la pestaña Web y haga clic en Crear directorio virtual junto a la URL del proyecto.

¡Espero que esto ayude a alguien más también!

Brote



0

Haga clic con el botón derecho en Proyecto >> Propiedades >> Seleccione la pestaña Web >> En el servidor Seleccione "Usar servidor de desarrollo visual" para que, indirectamente, desmarque "Servidor IIS local"

Espero que pueda resolver este problema.


0

Abra cmd como administrador y ejecute este comando:

netsh http delete iplisten ipaddress=xxx.xxx.x.xxx

ipaddress es su IP privada.
Esto funcionó para mí.


0

Al igual que Donny V., esto me sucedió en VS2017 usando .net core 2.0.

Cuando se lanzó el proyecto por primera vez, VS mostró un cuadro de diálogo que ofrecía crear un certificado SSL para localhost, pero no quería usar SSL, así que dejé de ejecutarlo y entré en Propiedades del proyecto y deshabilité SSL (una casilla de verificación que se puede borrar) . Después de hacer eso, seguí recibiendo la descripción del problema.

Después de probar muchas cosas, lo que realmente resolvió el problema para mí fue editar el archivo launchSettings.json ubicado en [Nombre del proyecto] / Propiedades: se puede acceder desde el Explorador de soluciones.

Cuando se completó la edición, el contenido se veía así (donde 12345 es un Número de puerto y donde MyNETCoreApp es el nombre del proyecto).

{
    "iisSettings": {
        "windowsAuthentication": false,
        "anonymousAuthentication": true,
        "iisExpress": {
            "applicationUrl": "http://localhost:12345/"
        }
    },
    "profiles": {
        "IIS Express": {
            "commandName": "IISExpress",
            "launchBrowser": true,
            "launchUrl": "http://localhost:12345/",
            "environmentVariables": {
                "ASPNETCORE_ENVIRONMENT": "Development"
            }
        },
        "MyNETCoreApp": {
            "commandName": "Project",
            "launchBrowser": true,
            "environmentVariables": {
                "ASPNETCORE_ENVIRONMENT": "Development"
            },
            "applicationUrl": "http://localhost:12345/"
        }
    }
}

Las ediciones que hice fueron:

  • Se actualizaron los números de puerto para que todos fueran el mismo número
  • Se eliminó una clave: valor de ssl: 0 en un lugar
  • Se actualizaron todas las instancias https: // para que sean http: //


0

Esta solución funcionó para mí:

  1. Vaya a la carpeta de su proyecto y abra la .vscarpeta (mantenga marcada la casilla de verificación de elemento oculto, ya que esta carpeta puede estar oculta a veces)

  2. en la .vscarpeta - abrir config

  3. ¿Ves ese applicationhostarchivo de configuración allí? Elimina esa cosa (no te preocupes, se regenerará automáticamente una vez que vuelvas a compilar el proyecto).


0

En mi caso, Visual Studio 2017> Tools > Options

En el menú Depuración de la lista lateral, busque Edit and Continue

Uncheck la casilla de verificación Habilitar editar y continuar

Esto resuelve mi problema.


0

Hice lo siguiente en secuencia y funcionó para mí:

  1. eliminar carpeta .vs
  2. eliminar carpeta obj
  3. cerrar VS Studio
  4. Reiniciar la máquina

0

Para mí, el problema era que la configuración estaba configurada como personalizada en AsLivelugar de Debug.

ingrese la descripción de la imagen aquí

Dejar eso atrás lo solucionó para mí.


0

He tenido el mismo problema en una computadora sin derechos de administrador.

Deshacerse de la carpeta .vs (archivo applicationhost.config) en la carpeta del proyecto no fue suficiente.

Lo que funcionó para mí ... yo

  • carpeta bin eliminada (ya que reutilicé un proyecto existente)
  • carpeta Obj eliminada
  • carpeta .vs eliminada
  • cambié el puerto del proyecto (usé 3000) como lo mencionó @vinayakhegde arriba y también creé un directorio virtual
  • -

Localhost está accediendo a la solución hasta ahora.

Espero eso ayude


0

A veces, los puertos https y http pueden ser los mismos porque si dos etiquetas tienen los mismos puertos IISExpressSSLPorty DevelopmentServerPort asegúrese de que estos dos puertos tengan puertos diferentes, IISUrlutilice su puerto predeterminado, ya sea HTTP o HTTPS

https://localhost:44365
  • Para uso HTTPS IISExpressSSLPort
  • Para uso HTTP DevelopmentServerPort

Luego puede eliminar la carpeta .vs oculta en la carpeta de la solución

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.