Come risolvere ERR_CONNECTION_REFUSED quando si tenta di connettersi a localhost con IISExpress in esecuzione – Errore 502 (Imansible eseguire il debug da Visual Studio)?

Questo è in esecuzione su Windows Server 2008 e utilizzato per funzionare diversi mesi fa. Sto solo ora usando questo server per qualche lavoro di sviluppo con VS.

Questo è un server web live utilizzato anche per servire alcuni siti di test.

Questo si è verificato durante l’esecuzione di Visual Studio, quindi il lancio dei miei progetti per il debug.

Cercando di avviare qualsiasi sito tramite localhost:xxxx quando IISExpress è stato avviato (utilizzando i numeri di porta effettivi nella configurazione per accedere a diversi siti):

 This webpage is not available ERR_CONNECTION_REFUSED 

Sono già stato a questo per alcuni giorni, come ho letto altri hanno avuto problemi simili, provato la maggior parte delle cose che ho letto tra cui cambiare la managedruntimeversion da “v4.0” a “v4.0.30319” per .net 4.5 (Ho mai dovuto farlo prima) e disabilitando il modulo di registrazione (tutti i suggerimenti trovati qui ).

Ci sono solo due voci nel mio file hosts che puntano agli indirizzi IP del server interno. Nessun IP o riferimenti relativi a localhost .

Sono andato fino a reinstallare IIS Express e Visual Studio 2013. Ho anche creato un sito WebApplication nuovo di zecca per provare a risolvere questo (semplice e nessun altro binding complicato).

Quando faccio girare Fiddler, vedo quanto segue nella pagina:

 [Fiddler] The socket connection to localhost failed. ErrorCode: 10061. No connection could be made because the target machine actively refused it 127.0.0.1:23162 

Cattura del violinista

Ho rimosso tutte le impostazioni del proxy dalla sezione di connessione LAN di IE, dove prima avevo un popup rosso-x in VS che indicava che IISExpress non poteva essere lanciato .

Non si tratta di SSL o non SSL.

Ho installato TFS Server – disinstallato nel caso in cui ci fossero alcuni binding strani che stavano interferendo.

Ho provato a cancellare la cartella config / settings IISExpress più volte.

L’attuale applicationhost.config contiene:

              

Vorrei che ci fosse un tag really-stuck .

Si prega di suggerire via, in quanto non voglio andare fino a far girare un nuovo server.

— AGGIORNARE —

Nella barra degli indirizzi, quando inserisco il nome del computer o l’indirizzo IP: xxxx, ottengo ERR_CONNECTION_TIMED_OUT piuttosto che ERR_CONNECTION_REFUSED .

Prova a cambiare il numero di porta nel tuo progetto?

Proprietà del progetto → Web → Server → Url del progetto:

inserisci la descrizione dell'immagine qui

Non dimenticare di fare clic su Create Virtual Directory o di rispondere “Sì” al prompt per la creazione della directory virtuale dopo aver modificato il numero di porta! (Grazie Connor )

Nota: Sono un po ‘riluttante a postare questa risposta come risposta, poiché non ho idea di quale sia il problema o di cosa lo abbia causato, ma ho riscontrato un problema simile e il cambio del numero di porta ha funzionato. Sto solo postando questo suggerimento nei commenti che questo ha funzionato anche per qualcun altro.

Nel mio caso, sembrava che qualcosa fosse in conflitto con il numero di porta specifico che stavo usando, quindi ho cambiato a uno diverso, e il mio sito è saltato di nuovo a destra! Non sono sicuro di cosa significhi per il vecchio numero di porta o se potrò mai usarlo di nuovo. Forse qualcuno più esperto di me può intervenire su questo.

Grazie per tutte le risposte. Ho provato tutti loro ma nessuno di loro ha funzionato per me. Ciò che ha funzionato è stato eliminare il file applicationhost.config dalla cartella .vs (che si trova nella cartella del progetto / soluzione) e creare una nuova directory virtuale (Proprietà del progetto> Web> Crea directory virtuale). Spero che questo aiuti qualcun altro.

Questo problema potrebbe essere dovuto al fatto che nel passato recente è stato utilizzato il binding dell’indirizzo IP nella configurazione dell’applicazione.

Passi per risolvere il problema:

  • Esegui sotto il comando nel terminale di comando degli accessi dell’amministratore

netsh http mostra iplisten

Se vedi qualcosa come sotto, questa soluzione potrebbe non aiutarti.

Indirizzi IP presenti nella lista di ascolto IP:

0.0.0.0

Se vedi qualcosa di diverso da 0.0.0.0, prova a seguire i passaggi per risolvere questo problema.

  • Esegui questi comandi in successione in un terminale di comando con privilegi elevati

netsh http delete iplisten ipaddress = 11.22.33.44 (dove 11.22.33.44 è l’IP effettivo che deve essere rimosso)

netsh http add iplisten ipaddress = 0.0.0.0

iisreset

E ora il tuo issexpress è impostato per ascoltare qualsiasi ping in arrivo al binding di localhost.

Ho appena riparato questo per la mia macchina. Forse funzionerà per alcuni. Forse non per gli altri, ma ecco cosa ha funzionato per me.

In IIS, ho dovuto aggiungere i collegamenti per https al sito web predefinito (o, suppongo, il sito Web su cui si sta eseguendo l’app).

inserisci la descrizione dell'immagine qui

Ora il mio localhost funziona quando eseguo il debug da Visual Studio.

Nel mio caso è stato causato avviando IIS senza diritti amministrativi. Quando ho lanciato IIS come amministratore e ho avviato il sito, ha funzionato correttamente

Nel mio caso, è stato causato da un overflow infinito di loop / stack.

La soluzione di Sam ha funzionato per me, ma non volevo correre come amministratore come soluzione permanente.

Ecco come l’ho risolto nel mio caso:

  1. Esegui CMD come amministratore
  2. Digita “netsh http show urlacl” e trova l’url riservato con la porta pertinente
  3. Digita “netsh http delete urlacl url = YourReservedUrlHere”

Successivamente potrei eseguire la mia app senza la necessità di diritti di amministratore. Ma ha incasinato la possibilità di navigare nella mia app da un computer esterno. Abbastanza vicino per me per ora.

Il mio problema si è rivelato essere una completa mancanza di comprensione del reindirizzamento uri nel processo di autenticazione.

Ho scaricato un codice che conteneva la seguente dichiarazione:

string redirecturi = ” http: // localhost / googlesignin “;

Stavo usando vs2015 con un modello di sito web. Non c’è nessuna pagina web “googlesignin” nel mio sito web, mai!

Quindi, perché questo ha funzionato a tutti per diversi giorni durante lo sviluppo del mio sito?

Prova vivente che i bug casuali possono far sì che il codice funzioni dove dovrebbe fallire.

Ho cambiato googlesigin in GoogleDrive, che è il nome della mia pagina Web e tutto ha funzionato!

Sono un ragazzo stupido!

Ricostruisci Tutto ha funzionato per me. VS2013, IIS Express.

Ho risolto questo problema avviando Visual Studio con Run as administrator . Questo è necessario anche se si desidera pubblicare il progetto sull’IIS locale.

Per impostare in modo permanente: –

  1. Fare clic con il tasto destro sull’icona di Visual Studio
  2. Seleziona Properties
  3. Clicca Advanced
  4. Assicurarsi che Run as administrator sia selezionato
  5. Fare clic su OK fino in fondo.
  6. Avvia Visual Studio, carica il tuo progetto e avvia il debug

Ho risolto andando a Progetto Proprietà -> Debug, dopo aver abilitato SSL e utilizzare l’indirizzo nel browser

inserisci la descrizione dell'immagine qui

Nel mio caso, il mio collega ha cambiato il nome della soluzione in modo che dopo aver ottenuto l’ultima versione del progetto, ERR_CONNECTION_REFUSED mia applicazione Web con IIS EXPRESS, quindi ho ricevuto il messaggio ERR_CONNECTION_REFUSED nel mio google chrome.

Dopo aver provato tutte le soluzioni che trovo su internet, finalmente ho risolto il problema con questi passaggi:

  1. Chiudi VS
  2. Elimina la cartella .vs nella cartella del progetto inserisci la descrizione dell'immagine qui

  3. Esegui come amministratore VS

  4. Apri Debug> Proprietà [Proprietà]> Web

  5. Cambia la porta in Project URL e non dimenticare di usare https perché nel mio caso, quando sto usando http non funziona ancora.

  6. Fai clic su Create virtual directory

  7. Eseguire di nuovo l’applicazione utilizzando IIS EXPRESS.

  8. E l’applicazione Web è stata eseguita con successo.

Spero che questi aiuti.

Assicurati di avere una pagina iniziale specificata, pure. Fare clic con il tasto destro sulla pagina .aspx che si desidera utilizzare come pagina iniziale e selezionare “Imposta come pagina iniziale”

Un semplice lavoro (ha funzionato per me) è utilizzare l’indirizzo IP invece di localhost. Questo dovrebbe andare bene per le tue attività di sviluppo.