Condividi tramite


Esegui il debug remoto di ASP.NET Core su un server IIS remoto con Visual Studio

Per eseguire il debug di un'applicazione ASP.NET Core distribuita in IIS, installare ed eseguire gli strumenti remoti nel computer in cui è stata distribuita l'app e quindi connettersi all'app in esecuzione da Visual Studio.

componenti del debugger remoto

Questa guida illustra come configurare e configurare visual Studio ASP.NET Core, distribuirlo in IIS e collegare il debugger remoto da Visual Studio. Per eseguire il debug remoto di ASP.NET 4.8, vedere Debug remoto ASP.NET su un computer IIS. È anche possibile distribuire ed eseguire il debug in IIS usando Azure. Per Azure App Service, vedere Debug remoto ASP.NET Core in Azure o, per Visual Studio Enterprise, usare il Snapshot Debugger (.NET 4.6.1 obbligatorio).

Prerequisiti

Visual Studio 2019 o una versione successiva è necessario per seguire i passaggi illustrati in questo articolo.

Queste procedure sono state testate in queste configurazioni del server:

  • Windows Server 2022 e IIS 10
  • Windows Server 2019 e IIS 10
  • Windows Server 2016 e IIS 10

Requisiti di rete

Il debug tra due computer connessi tramite un proxy non è supportato. Il debug su una connessione a latenza elevata o a larghezza di banda ridotta, ad esempio connessione Internet remota o su Internet tra paesi/aree geografiche non è consigliato e potrebbe non riuscire o essere inaccettabile lento. Per un elenco completo dei requisiti, vedere requisiti .

App già in esecuzione in IIS?

Questo articolo include i passaggi per configurare una configurazione di base di IIS in Windows Server e la distribuzione dell'app da Visual Studio. Questi passaggi sono inclusi per assicurarsi che il server abbia componenti necessari installati, che l'app possa essere eseguita correttamente e che si sia pronti per il debug remoto.

  • Se l'app è in esecuzione in IIS e si vuole solo scaricare il debugger remoto e avviare il debug, passare a Scaricare e installare gli strumenti remoti in Windows Server.

  • Per assicurarsi che l'app sia configurata, distribuita ed eseguita correttamente in IIS in modo da poter eseguire il debug, seguire tutti i passaggi descritti in questo articolo.

Creare l'applicazione ASP.NET Core nel computer di Visual Studio

  1. Creare una nuova applicazione Web ASP.NET Core.

    In Visual Studio scegliere finestra File>finestra Start per aprire la finestra Start e quindi scegliere Crea un nuovo progetto. Nella casella di ricerca digitare applicazione web, quindi scegliere C# come linguaggio, quindi scegliere ASP.NET Core Web Application (Model-View-Controller)e quindi scegliere Avanti. Nella schermata successiva assegnare al progetto il nome MyASPAppe quindi scegliere Avanti.

    Scegliere il framework di destinazione consigliato o .NET 8, e quindi selezionare Crea. La versione deve corrispondere alla versione installata nel server.

  2. Aprire il file HomeController.cs nella cartella Controllers e impostare un punto di interruzione nell'istruzione return View; nel metodo Privacy.

    Nei modelli precedenti aprire il file Privacy.cshtml.cs e impostare un punto di interruzione nel metodo OnGet.

Installare e configurare IIS in Windows Server

Questi passaggi mostrano solo una configurazione di base di IIS. Per informazioni più approfondite o per l'installazione in un computer Desktop di Windows, vedere Pubblicazione in IIS o IIS 8.0 Tramite ASP.NET 3.5 e ASP.NET 4.5.

Per i sistemi operativi Windows Server, usare la procedura guidata Aggiungi ruoli e funzionalità tramite il collegamento Gestisci o il collegamento Dashboard in Server Manager. Nel passaggio ruoli del server di selezionare la casella Server Web (IIS).

Screenshot che mostra il ruolo IIS del server Web selezionato nel passaggio Selezionare i ruoli del server.

(Windows Server 2022) Nella finestra di dialogo visualizzata scegliere Aggiungi funzionalità per aggiungere la Console di gestione IIS.

Nel passaggio Servizi ruolo, selezionare i servizi ruolo IIS desiderati o accettare i servizi ruolo predefiniti forniti. Se si vuole abilitare la distribuzione usando le impostazioni di pubblicazione e distribuzione Web, assicurarsi che siano selezionate le funzionalità seguenti:

  • Script e strumenti di gestione di IIS
  • Servizio di gestione
  • Console di gestione IIS

Screenshot che mostra gli script e gli strumenti di gestione IIS selezionati.

Procedere con i passaggi di conferma per installare il ruolo e i servizi del server Web. Un riavvio server/IIS non è necessario dopo l'installazione del ruolo Server Web (IIS).

Aggiornare le impostazioni di sicurezza del browser in Windows Server

Se si usa una versione precedente di Windows Server, potrebbe essere necessario aggiungere alcuni domini come siti attendibili per consentire di scaricare alcuni componenti del server Web. Aggiungere i siti attendibili passando a Opzioni Internet > Sicurezza > Siti Attendibili > Siti. Aggiungere i domini seguenti.

  • microsoft.com
  • go.microsoft.com
  • download.microsoft.com
  • iis.net

Quando si scarica il software, è possibile che vengano richieste di concedere l'autorizzazione per caricare vari script e risorse del sito Web. Alcune di queste risorse non sono necessarie, ma per semplificare il processo, selezionare Aggiungi quando richiesto.

Installare ASP.NET Core in Windows Server

  1. Installare il bundle di hosting .NET Core nel sistema di hosting. Il bundle installa il runtime di .NET Core, la libreria .NET Core e il modulo ASP.NET Core. Per istruzioni dettagliate, vedere Pubblicazione in IIS.

    Per il bundle di hosting corrente di .NET Core, installare il bundle di hosting ASP.NET Core.

    Nota

    Se IIS è stato installato in precedenza, il modulo IIS di ASP.NET Core viene installato con ASP.NET Core. In caso contrario, installare manualmente il modulo IIS di ASP.NET Core.

    Per installare .NET Core 2, installare .NET Core Windows Server Hosting.

    Nota

    Se il sistema non dispone di una connessione Internet, ottenere e installare il Microsoft Visual C++ 2015 Redistributable prima di installare il bundle di hosting di Windows Server .NET Core.

  2. Riavviare il sistema oppure eseguire net stop was /y seguito da net start w3svc da un prompt dei comandi per applicare una modifica al percorso di sistema.

Scegliere un'opzione di distribuzione

Se è necessario assistenza per distribuire l'app in IIS, prendere in considerazione queste opzioni:

  • Eseguire la distribuzione creando un file di impostazioni di pubblicazione in IIS e importando le impostazioni in Visual Studio. In alcuni scenari, si tratta di un modo rapido per distribuire l'app. Quando si crea il file delle impostazioni di pubblicazione, le autorizzazioni vengono configurate automaticamente in IIS.

  • Eseguire la distribuzione pubblicando in una cartella locale e copiando l'output utilizzando un metodo a tua scelta in una cartella dell'applicazione predisposta su IIS.

(Facoltativo) Eseguire la distribuzione usando un file di impostazioni di pubblicazione

È possibile usare questa opzione per creare un file di impostazioni di pubblicazione e importarlo in Visual Studio.

Nota

Se si vuole configurare distribuzione Web manualmente anziché importare le impostazioni di pubblicazione, è necessario assicurarsi che una cartella dell'app nel server sia configurata con i valori e le autorizzazioni corretti (vedere Configurare ASP.NET sito Web).

Configurare il sito Web ASP.NET Core

  1. In Gestione IIS, nel riquadro sinistro in Connessioniselezionare pool di applicazioni . Aprire DefaultAppPool e impostare la versione .NET CLR a Nessun codice gestito. Questa operazione è necessaria per ASP.NET Core. Il sito Web predefinito usa DefaultAppPool.

  2. Arrestare e riavviare DefaultAppPool.

Installare e configurare distribuzione Web in Windows Server

Web Deploy offre funzionalità di configurazione aggiuntive che consentono la creazione del file delle impostazioni di pubblicazione dall'interfaccia utente.

Nota

Il programma di installazione della piattaforma Web ha raggiunto la fine del ciclo di vita il 7/1/22. Per altre informazioni, vedere Programma di installazione della piattaforma Web - Fine del supporto e chiusura del feed di prodotti/applicazioni. È possibile installare direttamente Distribuzione Web 4.0 per creare il file delle impostazioni di pubblicazione.

  1. Se non è già stato installato IIS Management Scripts and Tools, installarlo ora.

    Passare a Selezionare i ruoli del server>Server Web (IIS)>Strumenti di gestione, quindi selezionare il ruolo script e strumenti di gestione IIS, fare clic su Avantie quindi installare il ruolo.

    Installare gli script e gli strumenti di gestione IIS

    Gli script e gli strumenti sono necessari per abilitare la generazione del file delle impostazioni di pubblicazione.

    Assicurarsi di installare anche il Servizio di Gestione e la Console di Gestione IIS (potrebbero essere già installati).

  2. Su Windows Server, scaricare Web Deploy 4.0.

  3. Eseguire il programma di installazione di distribuzione Web e assicurarsi di selezionare l'opzione installazione completa anziché un'installazione tipica.

    Con un'installazione completa, si ottengono i componenti necessari per generare un file di impostazioni di pubblicazione. Se si sceglie Personalizzato, è possibile visualizzare l'elenco dei componenti, come mostrato nell'illustrazione seguente.

    Screenshot che mostra i componenti di Web Deploy 4.0

  4. (Facoltativo) Verificare che Distribuzione Web sia in esecuzione correttamente aprendo Pannello di controllo > Sistema e sicurezza > Strumenti di amministrazione > Servicese quindi assicurarsi che:

    • servizio agente di distribuzione Web è in esecuzione (il nome del servizio è diverso nelle versioni precedenti).

    • Il servizio di gestione Web è in esecuzione.

    Se uno dei servizi dell'agente non è in esecuzione, riavviare il servizio agente di distribuzione Web .

    Se il servizio agente di distribuzione Web non è presente, vai a Pannello di controllo > Programmi > Disinstalla un programma, trova Microsoft Web Deploy <versione>. Scegliere di Modificare l'installazione e assicurarsi di scegliere Verrà installato nel disco rigido locale per i componenti di distribuzione Web Deploy. Completare i passaggi di installazione delle modifiche.

Creare il file delle impostazioni di pubblicazione in IIS in Windows Server

  1. Chiudere e riaprire la Console di gestione IIS per visualizzare le opzioni di configurazione aggiornate nell'interfaccia utente.

  2. In IIS fare clic con il pulsante destro del mouse sul sito Web predefinitoscegliere Deploy>Configure Web Deploy Publishing.

    Configurare la configurazione di Distribuzione Web

    Se non viene visualizzato il menu Distribuisci, vedere la sezione precedente per verificare che Web Deploy sia in esecuzione.

  3. Nella finestra di dialogo Configura pubblicazione distribuzione Web esaminare le impostazioni.

  4. Fare clic su Setup.

    Nel pannello Risultati l'output mostra che i diritti di accesso vengono concessi all'utente specificato e che un file con estensione publishsettings file è stato generato nel percorso visualizzato nella finestra di dialogo.

    <?xml version="1.0" encoding="utf-8"?>
    <publishData>
      <publishProfile
        publishUrl="https://myhostname:8172/msdeploy.axd"
        msdeploySite="Default Web Site"
        destinationAppUrl="http://myhostname:80/"
        profileName="Default Settings"
        publishMethod="MSDeploy"
        userName="myhostname\myusername" />
    </publishData>
    

    A seconda della configurazione di Windows Server e IIS, nel file XML vengono visualizzati valori diversi. Ecco alcuni dettagli sui valori visualizzati:

    • Il file msdeploy.axd a cui si fa riferimento nell'attributo publishUrl è un file del gestore HTTP generato dinamicamente per distribuzione Web. (A scopo di test, http://myhostname:8172 funziona anche in genere.

    • La porta publishUrl è impostata sulla porta 8172, ovvero l'impostazione predefinita per Distribuzione Web.

    • La porta destinationAppUrl è impostata sulla porta 80, ovvero l'impostazione predefinita per IIS.

    • Se, nei passaggi successivi, non è possibile connettersi all'host remoto da Visual Studio usando il nome host, testare l'indirizzo IP del server al posto del nome host.

      Nota

      Se si esegue la pubblicazione in IIS in una macchina virtuale di Azure, è necessario aprire una porta in ingresso per Distribuzione Web e IIS nel gruppo Sicurezza di rete. Per informazioni dettagliate, vedere Aprire le porte a una macchina virtuale.

  5. Copiare questo file nel computer in cui si esegue Visual Studio.

Importare le impostazioni di pubblicazione in Visual Studio e distribuire

  1. Nel computer in cui è aperto il progetto ASP.NET in Visual Studio fare clic con il pulsante destro del mouse sul progetto in Esplora soluzioni e scegliere Pubblica.

    Se in precedenza sono stati configurati profili di pubblicazione, viene visualizzato il riquadro Pubblica. Fare clic su Nuovo o Crea nuovo profilo.

  2. Selezionare l'opzione per importare un profilo.

    Nella finestra di dialogo Pubblica, fare clic su Importa profilo.

    Scegliere Pubblica

  3. Vai al percorso del file delle impostazioni di pubblicazione creato nella sezione precedente.

  4. Nella finestra di dialogo Importa file di impostazioni di pubblicazione passare a e selezionare il profilo creato nella sezione precedente e fare clic su Apri.

    Fare clic su Fine per salvare il profilo di pubblicazione e quindi su Pubblica.

    Visual Studio avvia il processo di distribuzione e la finestra Output mostra lo stato di avanzamento e i risultati.

    Se si verificano errori di distribuzione, fare clic su Altre azioni>Modifica per modificare le impostazioni. Modificare le impostazioni e fare clic su Convalida per testare le nuove impostazioni. Se il nome host non viene trovato, provare l'indirizzo IP anziché il nome host nei campi server e url di destinazione .

    Modificare le impostazioni nello strumento di pubblicazione

Dopo che l'app viene distribuita correttamente, dovrebbe essere avviata automaticamente.

  • Se l'app non viene avviata dopo la distribuzione, avviare l'app in IIS per verificare che venga eseguita correttamente.
  • Per ASP.NET Core verificare che il campo Application Pool per DefaultAppPool sia impostato su Nessun codice gestito.

Quando si è pronti, passare a una configurazione di debug.

Importante

Se si sceglie di eseguire il debug di una configurazione di versione, si disabilita il debug nel file web.config durante la pubblicazione.

  1. Selezionare Altre opzioni>Modifica per modificare il profilo e quindi selezionare Impostazioni.
  2. Selezionare Salva e quindi ripubblicare l'app.
  3. Selezionare una configurazione debug e quindi selezionare Rimuovi file aggiuntivi nella di destinazione nelle opzioni Pubblicazione file.
  1. Selezionare Modifica per modificare il profilo e quindi selezionare Impostazioni.
  2. Selezionare Salva e quindi ripubblicare l'app.
  3. Selezionare una configurazione Debug e quindi selezionare Rimuovi file aggiuntivi nella destinazione sotto le opzioni Pubblicazione file.

Avvertimento

L'uso di credenziali di nome utente e password (autenticazione di base) non è il metodo di autenticazione più sicuro. Quando possibile, usare metodi alternativi. Si consideri ad esempio la pubblicazione in un pacchetto da Visual Studio e quindi usare WebDeploy.exe da una riga di comando per distribuire il pacchetto. Con questo metodo, è possibile usare Gestione IIS per configurare gli utenti windows autorizzati che possono pubblicare nel server Web ed eseguire WebDeploy.exe con tale account utente di Windows. Vedere Installazione e configurazione della distribuzione Web in IIS 8.0 o versioni successive. Se si utilizzano credenziali basate su password, assicurarsi di usare una password complessa e proteggerla da perdite o condivisioni non autorizzate.

(Facoltativo) Eseguire la distribuzione pubblicando in una cartella locale

È possibile usare questa opzione per distribuire l'app se si vuole copiare l'app in IIS usando PowerShell, RoboCopy o si desidera copiare manualmente i file.

Configurare il sito Web ASP.NET Core nel computer Windows Server

  1. Aprire Esplora File e creare una nuova cartella, C:\Publish, da usare per distribuire il progetto ASP.NET Core.

  2. Se non è già aperto, aprire Gestione di Internet Information Services (IIS). Nel riquadro sinistro di Server Manager selezionare IIS. Fare clic con il pulsante destro del mouse sul server e selezionare Gestione di Internet Information Services (IIS).

  3. In Connessioni nel riquadro sinistro, vai a Siti.

  4. Selezionare sito Web predefinito, scegliere Impostazioni di basee impostare il percorso fisico su C:\Publish.

  5. Fare clic con il pulsante destro del mouse sul nodo sito Web predefinito e selezionare Aggiungi applicazione.

  6. Impostare il campo alias su MyASPApp, accettare il pool di applicazioni predefinito (DefaultAppPool) e impostare il percorso fisico su C:\Publish.

  7. In Connessioniselezionare pool di applicazioni . Aprire DefaultAppPool e impostare il campo Pool di applicazioni su Nessun codice gestito.

  8. Fare clic con il pulsante destro del mouse sul nuovo sito in Gestione IIS, scegliere Modifica autorizzazionie assicurarsi che IUSR, IIS_IUSRS o l'utente configurato per l'accesso all'app Web sia un utente autorizzato con diritti di lettura & Esegui.

    Se uno di questi utenti non viene visualizzato con accesso, seguire la procedura per aggiungere IUSR come utente con diritti di lettura & Esecuzione.

Importante

Per informazioni sulla sicurezza correlate agli account predefiniti, vedere Understanding Built-In User and Group Accounts in IIS 7.

Pubblicare e distribuire l'app pubblicando in una cartella locale da Visual Studio

È anche possibile pubblicare e distribuire l'app usando il file system o altri strumenti.

  1. Nell'Esplora soluzioni fare clic con il pulsante destro del mouse sul nodo del progetto e selezionare Pubblica (per Web Form Pubblica applicazione Web).

    Se in precedenza sono stati configurati profili di pubblicazione, viene visualizzato il riquadro Pubblica. Fare clic su Nuovo profilo.

  2. Nella finestra di dialogo Pubblica, selezionare Cartella, fare clic su Sfogliae creare una nuova cartella, C:\Pubblica.

    Screenshot della finestra di dialogo Seleziona destinazione di pubblicazione in Visual Studio con la cartella 'C:\Pubblica' selezionata come destinazione di pubblicazione.

    Fare clic su Fine per salvare il profilo di pubblicazione.

    Screenshot della finestra di dialogo Seleziona destinazione di pubblicazione in Visual Studio con la cartella 'C:\Pubblica' selezionata come destinazione di pubblicazione.

    Cliccare su Fine per salvare il profilo di pubblicazione.

  3. Passare a una configurazione di debug.

    Scegliere Modifica per modificare il profilo e quindi scegliere Impostazioni. Scegliere una configurazione di Debug e quindi scegliere Rimuovi file aggiuntivi alla destinazione nelle opzioni Pubblica File.

    Screenshot della scheda Impostazioni della finestra di dialogo Pubblica. La configurazione è impostata su Debug e viene selezionato il pulsante Pubblica.

    Nota

    Se si usa una build di rilascio, si disabilita il debug nel file web.config durante la pubblicazione.

  4. Fare clic su Pubblica.

    L'applicazione pubblica una configurazione di debug del progetto nella cartella locale. Lo stato di avanzamento viene visualizzato nella finestra Output.

  5. Copiare la directory del progetto ASP.NET dal computer Visual Studio nella directory locale configurata per l'app ASP.NET (in questo esempio C:\Publish) nel computer Windows Server. In questa esercitazione si presuppone che si stia copiando manualmente, ma è possibile usare altri strumenti come PowerShell, Xcopy o Robocopy.

    Cautela

    Se è necessario apportare modifiche al codice o alla ricompilazione, è necessario ripubblicare e ripetere questo passaggio. Il file eseguibile copiato nel computer remoto deve corrispondere esattamente all'origine locale e ai simboli. Se non si esegue questa operazione, verrà visualizzato un avviso cannot find or open the PDB file in Visual Studio quando si tenta di eseguire il debug del processo.

  6. In Windows Server verificare che sia possibile eseguire correttamente l'app aprendo l'app nel browser.

    Se l'app non viene eseguita correttamente, potrebbe verificarsi una mancata corrispondenza tra la versione di ASP.NET installata nel server e il computer di Visual Studio oppure potrebbe verificarsi un problema con la configurazione del sito Web o IIS. Ricontrollare i passaggi precedenti.

Scaricare e installare gli strumenti remoti in Windows Server

Scaricare la versione degli strumenti remoti che corrisponde alla versione di Visual Studio.

Nel dispositivo remoto o nel server in cui si vuole eseguire il debug, anziché nel computer di Visual Studio, scaricare e installare la versione corretta degli strumenti remoti dai collegamenti nella tabella seguente.

  • Scaricare l'aggiornamento più recente degli strumenti remoti per la versione di Visual Studio. Le versioni precedenti degli strumenti remoti non sono compatibili con le versioni successive di Visual Studio. Ad esempio, se si usa Visual Studio 2019, scaricare l'aggiornamento più recente degli strumenti remoti per Visual Studio 2019. In questo scenario non scaricare gli strumenti remoti per Visual Studio 2022.
  • Scaricare gli strumenti remoti con la stessa architettura del computer in cui si stanno installando. Ad esempio, se si vuole eseguire il debug di applicazioni x86 in un computer remoto che esegue un sistema operativo x64, installare gli strumenti remoti x64. Per eseguire il debug di applicazioni x86, ARM o x64 in un sistema operativo ARM64, installare gli strumenti remoti ARM64.
Versione Collegamento Note
Visual Studio 2022 Strumenti remoti Compatibile con tutte le versioni di Visual Studio 2022. Scaricare la versione corrispondente al sistema operativo del dispositivo (x86, x64 (AMD64) o ARM64. Nelle versioni precedenti di Windows Server, vedere sbloccare il download del file per informazioni sul download degli strumenti remoti.
Visual Studio 2019 Strumenti remoti Gli strumenti remoti per Visual Studio 2019 sono disponibili da My.VisualStudio.com. Se richiesto, partecipare al programma gratuito di Visual Studio Dev Essentials oppure accedere con l'ID sottoscrizione di Visual Studio. Scaricare la versione corrispondente al sistema operativo del dispositivo (x86, x64 (AMD64) o ARM64. Nelle versioni precedenti di Windows Server, vedere "Sbloccare il download del file" per assistenza con il download degli strumenti remoti.
Visual Studio 2017 Strumenti remoti Gli strumenti remoti per Visual Studio 2017 sono disponibili da My.VisualStudio.com. Se richiesto, partecipa al programma gratuito di ** Visual Studio Dev Essentials ** oppure accedi con l'ID sottoscrizione di Visual Studio. Scaricare la versione corrispondente al sistema operativo del dispositivo (x86, x64 (AMD64) o ARM64. In Windows Server, vedi Sbloccare il download del file per informazioni sul download degli strumenti remoti.
Visual Studio 2015 Strumenti remoti Gli strumenti remoti per Visual Studio 2015 sono disponibili da My.VisualStudio.com. Se richiesto, partecipa al programma gratuito di Visual Studio Dev Essentials o accedi con l'ID sottoscrizione di Visual Studio. In Windows Server, vedi Sbloccare il download del file per informazioni sul download degli strumenti remoti.
Visual Studio 2013 Strumenti remoti Pagina di download nella documentazione di Visual Studio 2013
Visual Studio 2012 Strumenti remoti Pagina di download nella documentazione di Visual Studio 2012
Versione Collegamento Note
Visual Studio 2019 Strumenti remoti Compatibile con tutte le versioni di Visual Studio 2019. Scaricare la versione corrispondente al sistema operativo del dispositivo (x86, x64 (AMD64) o ARM64. In Windows Server, vedi Sbloccare il download del file per informazioni sul download degli strumenti remoti. Per la versione più recente degli strumenti remoti, aprire il documento Visual Studio 2022.
Visual Studio 2017 Strumenti remoti Compatibile con tutte le versioni di Visual Studio 2017. Scaricare la versione corrispondente al sistema operativo del dispositivo (x86, x64 (AMD64) o ARM64. Su Windows Server, vedi Sblocca il download del file per informazioni sul download degli strumenti remoti.
Visual Studio 2015 Strumenti remoti Gli strumenti remoti per Visual Studio 2015 sono disponibili da My.VisualStudio.com. Se richiesto, partecipate al programma gratuito di Visual Studio Dev Essentials oppure accedete con l'ID abbonamento di Visual Studio. In Windows Server, vedi Sbloccare il download del file per informazioni sul download degli strumenti remoti.
Visual Studio 2013 Strumenti remoti Pagina di download nella documentazione di Visual Studio 2013
Visual Studio 2012 Strumenti remoti Pagina di download nella documentazione di Visual Studio 2012

È possibile eseguire il debugger remoto copiando msvsmon.exe nel computer remoto, anziché installando gli strumenti remoti. Tuttavia, la Configurazione guidata debugger remoto (rdbgwiz.exe) è disponibile solo quando si installano gli strumenti remoti. Potrebbe essere necessario usare la procedura guidata per la configurazione se si vuole eseguire il debugger remoto come servizio. Per altre informazioni, vedere (facoltativo) Configurare il debugger remoto come servizio.

Nota

  • Per eseguire il debug di app di Windows 10 o versioni successive nei dispositivi ARM, usare ARM64, disponibile con la versione più recente degli strumenti remoti.
  • Per eseguire il debug delle app di Windows 10 nei dispositivi Windows RT, usare ARM, disponibile solo nel download degli strumenti remoti di Visual Studio 2015.
  • Per eseguire il debug di app x64 in un sistema operativo ARM64, eseguire il msvsmon.exe x64 installato con gli strumenti remoti ARM64.

Configurare il debugger remoto in Windows Server

  1. Sul computer remoto, individua e avvia il Debugger remoto dal menu Start .

    Se non si dispone delle autorizzazioni amministrative sul computer remoto, fare clic con il pulsante destro del mouse sull'app Debugger Remoto e selezionare Esegui come amministratore. In caso contrario, inizialo normalmente.

    Se si prevede di connettersi a un processo in esecuzione come amministratore o in esecuzione con un account utente diverso, ad esempio IIS, fare clic con il pulsante destro del mouse sull'app Debugger remoto e selezionare Esegui come amministratore. Per ulteriori informazioni, vedi Esegui il debugger remoto come amministratore.

  2. La prima volta che si avvia il debugger remoto (o prima di averla configurata), viene visualizzata la configurazione di debug remoto procedura guidata.

    Nella maggior parte degli scenari scegliere Avanti finché non si arriva alla pagina Configura windows Firewall della procedura guidata.

    Screenshot della configurazione del Debugger Remoto.

    Screenshot della configurazione del Debugger Remoto.

    Se l'API di Servizi Web Windows non è installata, che si verifica solo in Windows Server 2008 R2, selezionare il pulsante Installa.

  3. Selezionare almeno un tipo di rete su cui si vogliono usare gli strumenti remoti. Se i computer sono connessi tramite un dominio, è necessario scegliere il primo elemento. Se i computer sono connessi tramite un gruppo di lavoro o un gruppo home, scegliere il secondo o il terzo elemento in base alle esigenze.

    Selezionare quindi Fine per avviare il debugger remoto.

    Selezionare quindi Configura debug remoto per avviare il debugger remoto.

  4. Al termine della configurazione, viene visualizzata la finestra Debugger remoto.

    Screenshot della finestra del debugger remoto

    Screenshot della finestra del Debugger remoto

    Il debugger remoto è ora in attesa di una connessione. Usare il nome del server e il numero di porta visualizzati per impostare la configurazione della connessione remota in Visual Studio.

Per fermare il debugger remoto, seleziona File>Esci. È possibile riavviarlo dal menu Start o dalla riga di comando:

<Remote debugger installation directory>\msvsmon.exe

Nota

Se è necessario aggiungere autorizzazioni per altri utenti, modificare la modalità di autenticazione o il numero di porta per il debugger remoto, vedere Configurare il debugger remoto.

Per informazioni sull'esecuzione del debugger remoto come servizio, vedere Eseguire il debugger remoto come servizio.

Connettersi all'applicazione ASP.NET Core dal computer di Visual Studio

A partire da Visual Studio 2022 versione 17.10 Preview 2, la finestra di dialogo Collega al processo è stata modificata. Se sono necessarie istruzioni che corrispondono alla finestra di dialogo precedente, passare alla visualizzazione Visual Studio 2019 (selettore della versione superiore sinistra nell'articolo).

  1. Nel computer di Visual Studio aprire la soluzione di cui si sta tentando di eseguire il debug (MyASPApp se si seguono tutti i passaggi descritti in questo articolo).

  2. In Visual Studio selezionare Debug > Collega al processo (CTRL+ ALT+P).

    Suggerimento

    In Visual Studio 2017 e versioni successive è possibile ricollegare lo stesso processo a cui è stato precedentemente collegato usando Debug > Ricollega a processo... (MAIUSC + ALT + P).

  3. Impostare il tipo di connessione su Remoto (Windows) .

    Viene visualizzata l'opzione connessione destinazione .

    Impostare la destinazione connessione su <nome computer remoto> e premere INVIO.

    Verificare che Visual Studio aggiunga la porta richiesta al nome del computer, visualizzato nel formato: <nome del computer remoto>:port

    In Visual Studio 2022 verrà visualizzato <nome computer remoto>:4026

    La porta è obbligatoria. Se non viene visualizzato il numero di porta, aggiungerlo manualmente.

  1. Nel computer di Visual Studio aprire la soluzione di cui si sta tentando di eseguire il debug (MyASPApp se si seguono tutti i passaggi descritti in questo articolo).

  2. In Visual Studio selezionare Debug > Collega al processo (CTRL+ ALT+P).

    Suggerimento

    In Visual Studio 2017 e versioni successive è possibile ricollegare lo stesso processo a cui è stato precedentemente collegato usando Debug > Ricollega a processo... (MAIUSC + ALT + P).

  3. Impostare il campo Qualificatore su <nome computer remoto> e premere Invio.

    Verificare che Visual Studio aggiunga la porta richiesta al nome del computer, visualizzato nel formato: <nome computer remoto>:port

    In Visual Studio 2019 verrà visualizzato <nome computer remoto>:4024

    La porta è obbligatoria. Se non viene visualizzato il numero di porta, aggiungerlo manualmente.

  1. Selezionare Aggiorna.

    Dovresti vedere alcuni processi apparire nella finestra Processi Disponibili.

    Se non vengono visualizzati processi, provare a usare l'indirizzo IP anziché il nome del computer remoto (la porta è obbligatoria). È possibile usare ipconfig in una riga di comando per ottenere l'indirizzo IPv4.

    Se si vuole usare il pulsante trova, potrebbe essere necessario aprire la porta UDP 3702 in uscita sul server.

  2. Controlla Mostra i processi di tutti gli utenti.

  3. Digitare la prima lettera del nome del processo per trovare rapidamente l'app.

    • Se stai utilizzando il modello di hosting in-process su IIS, seleziona il processo corretto di w3wp.exe. A partire da .NET Core 3, questo processo è l'impostazione predefinita.

    • In caso contrario, selezionare il processo dotnet.exe. Questo è il modello di hosting fuori dal processo.

    Se sono presenti più processi che mostrano w3wp.exe o dotnet.exe, controllare la colonna nome utente. In alcuni scenari, la colonna nome utente mostra il nome del pool di app, ad esempio IIS APPPOOL\DefaultAppPool. Se viene visualizzato il pool di app, ma non è univoco, creare un nuovo pool di app denominato per l'istanza dell'app di cui si vuole eseguire il debug e quindi trovarlo facilmente nella colonna nome utente.

    Screenshot della finestra di dialogo Collega al processo.

    screenshot della finestra di dialogo Connetti a processo.

  4. Selezionare Collega.

  5. Aprire il sito Web del computer remoto. In un browser, accedere a http://<nome del computer remoto>.

    Verrà visualizzata la pagina Web ASP.NET.

  6. Nell'applicazione ASP.NET in esecuzione, selezionare il collegamento alla pagina Privacy.

    Il punto di interruzione deve essere raggiunto in Visual Studio.

    Se non è possibile collegarsi o raggiungere il punto di interruzione, vedere Risolvere i problemi di debug remoto.

Risoluzione dei problemi relativi alla distribuzione di IIS

  • Se non è possibile connettersi all'host usando il nome host, provare invece l'indirizzo IP.
  • Assicurarsi che le porte necessarie siano aperte nel server remoto.
  • Per ASP.NET Core, è necessario assicurarsi che il campo Pool di applicazioni per il DefaultAppPool sia impostato su Nessun codice gestito.
  • Verificare che la versione di ASP.NET usata nell'app corrisponda alla versione installata nel server. Per la tua app, puoi visualizzare e impostare la versione nella pagina Proprietà. Per impostare l'app su una versione diversa, è necessario installare tale versione.
  • Se l'app ha provato ad aprirsi, ma viene visualizzato un avviso del certificato, scegliere di fidarsi del sito. Se l'avviso è già stato chiuso, è possibile modificare il profilo di pubblicazione, un file *.pubxml, nel progetto e aggiungere l'elemento seguente (solo per il test): <AllowUntrustedCertificate>true</AllowUntrustedCertificate>
  • Dopo la distribuzione, avviare l'app in IIS per verificare che sia stata distribuita correttamente.
  • Controllare la finestra Output in Visual Studio per informazioni sullo stato e controllare i messaggi di errore.

Aprire le porte necessarie su Windows Server

Nella maggior parte delle configurazioni, le porte richieste vengono aperte dall'installazione di ASP.NET e dal debugger remoto. Potrebbe tuttavia essere necessario verificare che le porte siano aperte.

Nota

In una macchina virtuale di Azure è necessario aprire le porte tramite il gruppo di sicurezza di rete .

Porte obbligatorie:

  • 80: obbligatorio per IIS (HTTP).
  • Udp 3702: (facoltativo) La porta di scoperta consente di usare il pulsante trova quando si effettua il collegamento al debugger remoto in Visual Studio.

Inoltre, queste porte devono essere già aperte dall'installazione di ASP.NET:

  • 8172: (facoltativo) Obbligatorio per la distribuzione Web per distribuire l'app da Visual Studio

Aprire una porta

  1. Per aprire una porta in Windows Server, aprire il menu start , cercare Windows Defender Firewall o Windows Firewall con sicurezza avanzata.

    Per Windows Defender Firewall, scegliere Impostazioni avanzate.

  2. Scegliere quindi Regole in ingresso > Nuova regola > Portae quindi selezionare Avanti. Per UDP 3702, scegliere Regole per il traffico in uscita.

  3. In Porte locali specificheimmettere il numero di porta, selezionare Avanti.

  4. Selezionare Consenti connessione, selezionare Avanti.

  5. Selezionare uno o più tipi di rete per abilitare la porta e selezionare Avanti.

    Il tipo selezionato deve includere la rete a cui è connesso il computer remoto.

  6. Aggiungere il nome (ad esempio, "IIS", "Web Deploy" o "msvsmon") per la Regola in ingresso e selezionare Fine.

    La nuova regola dovrebbe essere visualizzata nell'elenco Regole in ingresso o Regole in uscita.

    Per altri dettagli sulla configurazione di Windows Firewall, vedere Configurare Windows Firewall per il debug remoto.

  7. Creare altre regole per le altre porte necessarie.