Freigeben über


Remote-Debugging von ASP.NET auf einem Remote-IIS-Computer

Um eine ASP.NET Anwendung zu debuggen, die in IIS bereitgestellt wurde, installieren und führen Sie die Remotetools auf dem Computer aus, auf dem Sie Ihre App bereitgestellt haben, und fügen Sie sie dann über Visual Studio an Ihre ausgeführte App an.

Remotedebuggerkomponenten

In diesem Handbuch wird erläutert, wie Sie eine Visual Studio ASP.NET MVC 4.8-Anwendung einrichten und konfigurieren, sie in IIS bereitstellen und den Remotedebugger aus Visual Studio anfügen.

Anmerkung

Informationen zum Remotedebugging ASP.NET Core finden Sie stattdessen unter Remotedebugging ASP.NET Core auf einem IIS-Computer. Informationen zu Azure App Service finden Sie unter Remote-Debuggen von ASP.NET Core in Azure, oder für Visual Studio Enterprise, verwenden Sie den Snapshot Debugger (.NET 4.6.1 erforderlich).

Voraussetzungen

Visual Studio 2019 oder eine höhere Version ist erforderlich, um die in diesem Artikel gezeigten Schritte auszuführen.

Diese Verfahren wurden auf diesen Serverkonfigurationen getestet:

  • Windows Server 2022 und IIS 10
  • Windows Server 2012 R2 und IIS 8 (Für Windows Server 2008 R2 sind die Serverschritte unterschiedlich)

Netzwerkanforderungen

Der Remotedebugger wird auf Windows Server ab Windows Server 2008 Service Pack 2 unterstützt. Eine vollständige Liste der Anforderungen finden Sie unter Anforderungen.

Anmerkung

Das Debuggen zwischen zwei Computern, die über einen Proxy verbunden sind, wird nicht unterstützt. Das Debuggen über eine Verbindung mit hoher Latenz oder niedriger Bandbreite, z. B. eine DFÜ-Internetverbindung oder eine länder-/regionsübergreifende Internetverbindung, wird nicht empfohlen und kann fehlschlagen oder unzumutbar langsam ausgeführt werden.

App, die bereits in IIS ausgeführt wird?

Dieser Artikel enthält Schritte zum Einrichten einer grundlegenden Konfiguration von IIS auf Dem Windows-Server und zum Bereitstellen der App aus Visual Studio. Diese Schritte sind enthalten, um sicherzustellen, dass der Server erforderliche Komponenten installiert hat, dass die App ordnungsgemäß ausgeführt werden kann und dass Sie zum Remotedebugging bereit sind.

  • Wenn Ihre App in IIS ausgeführt wird und Sie nur den Remotedebugger herunterladen und das Debuggen starten möchten, wechseln Sie zu Herunterladen und Installieren der Remotetools unter Windows Server.

  • Wenn Sie Hilfe bei der Sicherstellung der Einrichtung, Bereitstellung und ordnungsgemäßen Ausführung Ihrer App in IIS benötigen, damit Sie debuggen können, führen Sie alle Schritte in diesem Artikel aus.

Erstellen der ASP.NET 4.8-Anwendung auf dem Visual Studio-Computer

  1. Erstellen Sie eine neue MVC-ASP.NET Anwendung.

    Wählen Sie in Visual Studio Datei>Startfenster aus, um das Startfenster zu öffnen, und wählen Sie dann Erstellen eines neuen Projektsaus. Geben Sie im Suchfeld asp.net Framework-ein, und wählen Sie dann ASP.NET Webanwendung (.NET Framework)aus. Benennen Sie im daraufhin angezeigten Dialogfeld das Projekt MyASPApp-, wählen Sie ASP.NET Framework 4.8aus, und wählen Sie dann Erstellenaus.

    Wählen Sie MVC aus, und klicken Sie auf Erstellen.

  2. Öffnen Sie die HomeController.cs Datei im Ordner "Controller", und legen Sie in der return View;-Anweisung in der Privacy-Methode einen Haltepunkt fest.

    Öffnen Sie in älteren Vorlagen die Privacy.cshtml.cs-Datei, und legen Sie einen Haltepunkt in der OnGet-Methode fest.

Installieren und Konfigurieren von IIS auf Windows Server

Diese Schritte zeigen nur eine grundlegende Konfiguration von IIS. Ausführlichere Informationen oder Informationen zum Installieren auf einem Windows-Desktopcomputer finden Sie unter Veröffentlichen in IIS oder IIS 8.0 unter Verwendung von ASP.NET 3.5 und ASP.NET 4.5.

Verwenden Sie für Windows Server-Betriebssysteme den Assistenten Hinzufügen von Rollen und Features über den Link Verwalten oder den Link Dashboard- in Server-Manager-. Aktivieren Sie im Schritt Serverrollen das Kontrollkästchen für Webserver (IIS).

Screenshot mit der im Schritt

(Windows Server 2022) Wählen Sie im angezeigten Dialogfeld Features hinzufügen aus, um die IIS-Verwaltungskonsole hinzuzufügen.

Wählen Sie im Rollendienste Schritt die IIS-Rollendienste aus, die Sie wünschen, oder akzeptieren Sie die bereitgestellten Standardrollendienste. Wenn Sie die Bereitstellung mithilfe von Veröffentlichungseinstellungen und Web Deploy aktivieren möchten, stellen Sie sicher, dass die folgenden Features ausgewählt sind:

  • IIS-Verwaltungsskripts und -Tools
  • Managementdienst
  • IIS-Verwaltungskonsole

Screenshot mit ausgewählten IIS-Verwaltungsskripts und -Tools.

Führen Sie die Bestätigungsschritte aus, um die Webserverrolle und -dienste zu installieren. Ein Server-/IIS-Neustart ist nach der Installation der Webserverrolle (IIS) nicht erforderlich.

Aktualisieren der Browsersicherheitseinstellungen auf Windows Server

Wenn Sie eine ältere Version von Windows Server verwenden, müssen Sie möglicherweise einige Domänen als vertrauenswürdige Websites hinzufügen, damit Sie einige der Webserverkomponenten herunterladen können. Fügen Sie die vertrauenswürdigen Websites hinzu, indem Sie zu Internetoptionen > Sicherheit > vertrauenswürdige Websites > Websiteswechseln. Fügen Sie die folgenden Domänen hinzu.

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

Wenn Sie die Software herunterladen, erhalten Sie möglicherweise Anforderungen zum Erteilen der Berechtigung zum Laden verschiedener Websiteskripts und Ressourcen. Einige dieser Ressourcen sind nicht erforderlich, aber um den Vorgang zu vereinfachen, wählen Sie Hinzufügen aus, wenn Sie dazu aufgefordert werden.

Installieren von ASP.NET 4.8 unter Windows Server

Ausführlichere Informationen zum Installieren von ASP.NET in IIS finden Sie unter IIS 8.0 Using ASP.NET 3.5 and ASP.NET 4.5.

Anmerkung

Der Webplattform-Installer hat am 07.01.22 das Ende der Lebensdauer erreicht. Weitere Informationen finden Sie unter Webplattform-Installer: Ende des Supports und Einstellung des Produkt- bzw. Anwendungfeeds. Sie können ASP.NET 4.8 direkt über IIS installieren.

  1. Wählen Sie im linken Bereich des Server-Managers IIS-aus. Klicken Sie mit der rechten Maustaste auf den Server, und wählen Sie "Rollen und Features hinzufügen"aus.

  2. Wechseln Sie im Assistenten zum Abschnitt Features, und installieren Sie ASP.NET 4.8.

    Screenshot von IIS:Rollen und Features für IIS hinzufügen: ASP.NET 4.8 ausgewählt.

    Anmerkung

    Wenn Sie Windows Server 2008 R2 verwenden, installieren Sie stattdessen ASP.NET 4 mit diesem Befehl:

    C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -ir

  3. Starten Sie das System neu, oder führen Sie über eine Eingabeaufforderung net stop was /y gefolgt von net start w3svc aus, um eine Änderung am Systempfad zu übernehmen.

Auswählen einer Bereitstellungsoption

Wenn Sie Hilfe bei der Bereitstellung der App für IIS benötigen, sollten Sie die folgenden Optionen in Betracht ziehen:

  • Stellen Sie bereit, indem Sie eine Veröffentlichungseinstellungsdatei in IIS erstellen und die Einstellungen in Visual Studio importieren. In einigen Szenarien ist dies eine schnelle Möglichkeit, Ihre App bereitzustellen. Wenn Sie die Veröffentlichungseinstellungsdatei erstellen, werden Berechtigungen automatisch in IIS eingerichtet.

  • Bereitstellen durch Veröffentlichen in einem lokalen Ordner und Kopieren der Ausgabe durch eine bevorzugte Methode in einen vorbereiteten App-Ordner in IIS.

(Optional) Bereitstellung mithilfe einer Datei mit Veröffentlichungseinstellungen

Mit dieser Option können Sie eine Veröffentlichungseinstellungsdatei erstellen und in Visual Studio importieren.

Anmerkung

Wenn Sie Web Deploy manuell konfigurieren möchten, anstatt die Veröffentlichungseinstellungen zu importieren, müssen Sie sicherstellen, dass ein App-Ordner auf dem Server mit den richtigen Werten und Berechtigungen konfiguriert ist (siehe Konfigurieren ASP.NET Website).

Installieren und Konfigurieren von Web Deploy auf Windows Server

Web Deploy bietet zusätzliche Konfigurationsfeatures, die die Erstellung der Veröffentlichungseinstellungsdatei über die Benutzeroberfläche ermöglichen.

Anmerkung

Der Webplattform-Installer hat am 07.01.22 das Ende der Lebensdauer erreicht. Weitere Informationen finden Sie unter Webplattform-Installer: Ende des Supports und Einstellung des Produkt- bzw. Anwendungfeeds. Sie können Web Deploy 4.0 direkt installieren, um die Veröffentlichungseinstellungsdatei zu erstellen.

  1. Wenn Sie IIS-Verwaltungsskripts und -Toolsnoch nicht installiert haben, installieren Sie es jetzt.

    Wechseln Sie zu Wählen Sie Serverrollen>Webserver (IIS)>Verwaltungstoolsaus, und wählen Sie dann die rolle IIS-Verwaltungsskripts und - tools aus, klicken Sie auf Nächste, und installieren Sie dann die Rolle.

    Installieren von IIS-Verwaltungsskripts und -Tools

    Die Skripts und Tools sind erforderlich, um die Generierung der Veröffentlichungseinstellungsdatei zu ermöglichen.

    Stellen Sie sicher, dass Sie auch die Management Service und IIS-Verwaltungskonsole installieren (sie sind möglicherweise bereits installiert).

  2. Laden Sie Web Deploy 4.0 auf Windows Server herunter.

  3. Führen Sie das Web Deploy-Installationsprogramm aus, und stellen Sie sicher, dass Sie Vollständige Installation anstelle einer typischen Installation auswählen.

    Mit einer vollständigen Installation erhalten Sie die Komponenten, die Sie zum Generieren einer Veröffentlichungseinstellungsdatei benötigen. (Wenn Sie stattdessen Benutzerdefiniert auswählen, wird die Liste der Komponenten angezeigt, wie in der folgenden Abbildung dargestellt.)

    Screenshot mit Web Deploy 4.0-Komponenten

  4. (Optional) Stellen Sie sicher, dass Web Deploy ordnungsgemäß ausgeführt wird, indem Sie Systemsteuerung > System- und Sicherheitstools > Verwaltungstools > Diensteöffnen und dann folgendes sicherstellen:

    • Web Deployment Agent Service wird ausgeführt (der Dienstname unterscheidet sich in älteren Versionen).

    • Webverwaltungsdienst ausgeführt wird.

    Wenn einer der Agent-Dienste nicht ausgeführt wird, starten Sie den Webbereitstellungs-Agent-Dienst neu.

    Wenn der Webbereitstellungs-Agent-Dienst gar nicht vorhanden ist, gehen Sie zu Einstellungen > Programme > Programm deinstallieren, und suchen Sie die Microsoft Web Deploy<-Version>. Ändern Sie die Installation, und stellen Sie sicher, dass Sie für die Web Deploy-Komponenten Wird auf der lokalen Festplatte installiert auswählen. Führen Sie die Schritte zur Änderungsinstallation aus.

Erstellen der Veröffentlichungseinstellungsdatei in IIS unter Windows Server

  1. Schließen Sie die IIS-Verwaltungskonsole, und öffnen Sie sie erneut, um aktualisierte Konfigurationsoptionen in der Benutzeroberfläche anzuzeigen.

  2. Klicken Sie in IIS erst mit der rechten Maustaste auf Standardwebsite und anschließend mit der linken auf Bereitstellen>Configure Web Deploy Publishing (Web Deploy-Veröffentlichung konfigurieren).

    Konfigurieren der Webbereitstellungskonfiguration

    Wenn das Menü Bereitstellen nicht angezeigt wird, lesen Sie den vorherigen Abschnitt, um zu überprüfen, ob Web Deploy ausgeführt wird.

  3. Überprüfen Sie die Einstellungen im Dialogfeld Web Deploy-Veröffentlichung konfigurieren.

  4. Klicken Sie auf Einrichten.

    Im Bereich Ergebnisse Zeigt die Ausgabe an, dass dem angegebenen Benutzer Zugriffsrechte gewährt werden und dass eine Datei mit einer .publishsettings Dateierweiterung an dem Speicherort generiert wurde, der im Dialogfeld angezeigt wird.

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

    Je nach Windows Server- und IIS-Konfiguration werden in der XML-Datei unterschiedliche Werte angezeigt. Hier sind einige Details zu den angezeigten Werten:

    • Die msdeploy.axd Datei, auf die im attribut publishUrl verwiesen wird, ist eine dynamisch generierte HTTP-Handlerdatei für Web Deploy. (Für Testzwecke funktioniert http://myhostname:8172 in der Regel auch.)

    • Der publishUrl-Port ist auf Port 8172 festgelegt. Dies ist die Standardeinstellung für Web Deploy.

    • Der destinationAppUrl Port ist auf Port 80 festgelegt. Dies ist die Standardeinstellung für IIS.

    • Wenn Sie in späteren Schritten keine Verbindung mit dem Remotehost von Visual Studio mithilfe des Hostnamens herstellen können, testen Sie die IP-Adresse des Servers anstelle des Hostnamens.

      Anmerkung

      Wenn Sie auf IIS veröffentlichen, das auf einer Azure-VM läuft, müssen Sie einen eingehenden Port für Web Deploy und IIS in der Netzwerksicherheitsgruppe öffnen. Ausführliche Informationen finden Sie unter Öffnen von Ports zu einem virtuellen Computer.

  5. Kopieren Sie diese Datei auf den Computer, auf dem Visual Studio ausgeführt wird.

Importieren der Veröffentlichungseinstellungen in Visual Studio und Bereitstellen

  1. Klicken Sie auf dem Computer, auf dem das ASP.NET Projekt in Visual Studio geöffnet ist, mit der rechten Maustaste auf das Projekt im Projektmappen-Explorer, und wählen Sie Veröffentlichenaus.

    Wenn Sie zuvor Veröffentlichungsprofile konfiguriert haben, wird der bereich Veröffentlichen angezeigt. Klicken Sie auf Neu oder auf Neues Profil erstellen.

  2. Wählen Sie die Option zum Importieren eines Profils aus.

    Klicken Sie im Dialogfeld Veröffentlichen auf Profil importieren.

    Auswählen von „Veröffentlichen“ " auswählen

  3. Navigieren Sie zum Speicherort der Veröffentlichungseinstellungsdatei, die Sie im vorherigen Abschnitt erstellt haben.

  4. Navigieren Sie im Dialogfeld Datei mit Veröffentlichungseinstellungen importieren zu dem Profil, das Sie im vorherigen Abschnitt erstellt haben, wählen Sie es aus, und klicken Sie dann auf Öffnen.

    Klicken Sie auf Fertig stellen, um das Veröffentlichungsprofil zu speichern, und klicken Sie dann auf Veröffentlichen.

    Visual Studio beginnt den Bereitstellungsprozess, und das Ausgabefenster zeigt Fortschritt und Ergebnisse an.

    Wenn Bereitstellungsfehler auftreten, klicken Sie auf Weitere Aktionen>Bearbeiten, um Einstellungen zu bearbeiten. Ändern Sie einstellungen, und klicken Sie auf Überprüfen, um neue Einstellungen zu testen. Wenn der Hostname nicht gefunden wird, versuchen Sie die IP-Adresse anstelle des Hostnamens in den Feldern Server und Ziel-URL.

    Einstellungen zum Bearbeiten im Veröffentlichungstool

Nachdem die App erfolgreich bereitgestellt wurde, sollte sie automatisch gestartet werden. Wenn die App nach der Bereitstellung nicht gestartet wird, starten Sie die App in IIS, um zu überprüfen, ob sie ordnungsgemäß ausgeführt wird.

Wenn Sie fertig sind, wechseln Sie zu einer Debugkonfiguration.

Wichtig

Wenn Sie eine Releasekonfiguration debuggen möchten, deaktivieren Sie das Debuggen in der web.config-Datei, wenn Sie veröffentlichen.

  1. Wählen Sie Weitere Optionen>Bearbeiten aus, um das Profil zu bearbeiten, und wählen Sie dann Einstellungenaus.
  2. Wählen Sie eine Debugkonfiguration und dann Weitere Dateien im Ziel entfernen unter den Dateiveröffentlichungsoptionen aus.
  3. Wählen Sie Speichern und veröffentlichen Sie dann die App erneut.
  1. Wählen Sie Bearbeiten aus, um das Profil zu bearbeiten, und wählen Sie dann Einstellungenaus.
  2. Wählen Sie eine Debugkonfiguration und dann Weitere Dateien im Ziel entfernen unter den Dateiveröffentlichungsoptionen aus.
  3. Wählen Sie Speichern und veröffentlichen Sie dann die App erneut.

Warnung

Die Verwendung von Benutzernamen- und Kennwortanmeldeinformationen (Standardauthentifizierung) ist nicht die sicherste Authentifizierungsmethode. Verwenden Sie nach Möglichkeit alternative Methoden. Ziehen Sie beispielsweise die Veröffentlichung in einem Paket aus Visual Studio in Betracht, und verwenden Sie dann WebDeploy.exe aus einer Befehlszeile, um das Paket bereitzustellen. Mit dieser Methode können Sie den IIS-Manager verwenden, um autorisierte Windows-Benutzer zu konfigurieren, die auf dem Webserver veröffentlichen können, und WebDeploy.exe unter diesem Windows-Benutzerkonto ausführen. Siehe Installieren und Konfigurieren der Webbereitstellung unter IIS 8.0 oder höher. Wenn Sie Kennwortanmeldeinformationen verwenden, stellen Sie sicher, dass Sie ein sicheres Kennwort verwenden und dass das Kennwort nicht weitergegeben oder preisgegeben wird.

(Optional) Bereitstellen durch Veröffentlichen in einem lokalen Ordner

Sie können diese Option verwenden, um Ihre App bereitzustellen, wenn Sie die App mithilfe von PowerShell, RoboCopy oder manuell in IIS kopieren möchten.

Konfigurieren der ASP.NET-Website auf dem Windows Server-Computer

  1. Öffnen Sie Windows Explorer, und erstellen Sie einen neuen Ordner, C:\Publish, wo Sie das ASP.NET Projekt später bereitstellen.

  2. Wenn er noch nicht geöffnet ist, öffnen Sie den Internet Information Services (IIS) Manager. (Wählen Sie im linken Bereich des Server-Managers IIS-aus. Klicken Sie erst mit der rechten Maustaste auf den Server und anschließend mit der linken auf Internetinformationsdienste-Manager.

  3. Navigieren Sie links unter Verbindungen zu Websites.

  4. Wählen Sie die Standardwebsite-aus, wählen Sie Standardeinstellungenaus, und legen Sie den physischen Pfad auf C:\Publishfest.

  5. Klicken Sie mit der rechten Maustaste auf den Knoten Standardwebsite, und wählen Sie Anwendung hinzufügen aus.

  6. Legen Sie das Feld Alias auf MyASPApp-fest, übernehmen Sie den Standardanwendungspool (DefaultAppPool), und legen Sie den physischen Pfad auf C:\Publishfest.

  7. Klicken Sie unter Verbindungen auf Anwendungspools. Öffnen Sie DefaultAppPool-, und legen Sie das Feld "Anwendungspool" auf ASP.NET v4.0 fest (ASP.NET 4.5 ist keine Option für den Anwendungspool).

  8. Wenn die Site im IIS-Manager ausgewählt ist, wählen Sie Berechtigungen bearbeiten aus, und stellen Sie sicher, dass IUSR, IIS_IUSRS oder der Benutzer, der für den Anwendungspool konfiguriert ist, ein autorisierter Benutzer mit Lese- und Ausführungsrechten ist.

    Wenn einer dieser Benutzer keinen Zugriff hat, führen Sie die Schritte zum Hinzufügen von IUSR als Benutzer mit Lese- und Ausführungsrechten aus.

Wichtig

Sicherheitsinformationen zu den integrierten Konten finden Sie unter Grundlegendes zu Built-In Benutzer- und Gruppenkonten in IIS 7.

App veröffentlichen und bereitstellen, indem sie in einem lokalen Ordner von Visual Studio aus veröffentlicht wird.

Sie können die App auch mithilfe des Dateisystems oder anderer Tools veröffentlichen und bereitstellen.

Stellen Sie für ASP.NET 4.8 sicher, dass die web.config Datei die richtige Version von .NET auflistet.

  • Wenn Sie auf ASP.NET 4.8 abzielen, stellen Sie sicher, dass dieser Versionswert in der datei web.config aufgeführt ist:

        <system.web>
          <compilation debug="true" targetFramework="4.8" />
          <httpRuntime targetFramework="4.8" />
          <httpModules>
            <add name="ApplicationInsightsWebTracking" type="Microsoft.ApplicationInsights.Web.ApplicationInsightsHttpModule, Microsoft.AI.Web" />
          </httpModules>
        </system.web>
        ```
    
    
  • Wenn Sie ASP.NET 4 anstelle von 4.8 installieren, sollte der Versionswert in der datei web.config als 4.0 angegeben werden.

Führen Sie die folgenden Schritte aus, um die App zu veröffentlichen und bereitzustellen:

  1. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf den Projektknoten, und wählen Sie Veröffentlichen (für Web Forms Web-App veröffentlichen) aus.

    Wenn Sie zuvor Veröffentlichungsprofile konfiguriert haben, wird der bereich Veröffentlichen angezeigt. Klicken Sie auf Neues Profil.

  2. Wählen Sie im Dialogfeld Veröffentlichen den Ordneraus, klicken Sie auf Durchsuchen, und erstellen Sie einen neuen Ordner C:\Publish.

    Screenshot des Dialogfelds zum Auswählen eines Veröffentlichungsziels in Visual Studio, wobei der Ordner

    Klicken Sie auf Fertig stellen, um das Veröffentlichungsprofil zu speichern.

    Screenshot des Dialogfelds zum Auswählen eines Veröffentlichungsziels in Visual Studio, wobei der Ordner

    Klicken Sie auf Fertig stellen, um das Veröffentlichungsprofil zu speichern.

  3. Wechseln Sie zu einer Debugkonfiguration.

    Wählen Sie Bearbeiten aus, um das Profil zu bearbeiten, und wählen Sie dann Einstellungenaus. Wählen Sie eine Debug--Konfiguration aus, und wählen Sie dann Entfernen zusätzlicher Dateien am Ziel unter den Optionen Dateiveröffentlichung aus.

    Screenshot der Registerkarte

    Anmerkung

    Wenn Sie einen Releasebuild verwenden, deaktivieren Sie das Debuggen in der web.config Datei, wenn Sie veröffentlichen.

  4. Klicken Sie auf Veröffentlichen.

    Die Anwendung veröffentlicht eine Debug- Konfiguration des Projekts im lokalen Ordner. Der Fortschritt wird im Ausgabefenster angezeigt.

  5. Kopieren Sie das ASP.NET Projektverzeichnis vom Visual Studio-Computer in das für die ASP.NET-App konfigurierte lokale Verzeichnis (in diesem Beispiel C:\Publish) auf dem Windows Server-Computer. In diesem Lernprogramm wird davon ausgegangen, dass Sie manuell kopieren, aber Sie können andere Tools wie PowerShell, Xcopy oder Robocopy verwenden.

    Vorsicht

    Wenn Sie Änderungen am Code vornehmen oder neu erstellen müssen, müssen Sie diesen Schritt erneut veröffentlichen und wiederholen. Die ausführbare Datei, die Sie auf den Remotecomputer kopiert haben, muss genau mit Ihrer lokalen Quelle und den lokalen Symbolen übereinstimmen. Wenn Sie dies nicht tun, erhalten Sie eine cannot find or open the PDB file Warnung in Visual Studio, wenn Sie versuchen, den Prozess zu debuggen.

  6. Stellen Sie auf dem Windows Server sicher, dass Sie die App ordnungsgemäß ausführen können, indem Sie die App in Ihrem Browser öffnen.

    Wenn die App nicht ordnungsgemäß ausgeführt wird, besteht möglicherweise ein Konflikt zwischen der Auf dem Server und dem Visual Studio-Computer installierten Version von ASP.NET, oder Sie haben ein Problem mit Ihrer IIS- oder Websitekonfiguration. Überprüfen Sie frühere Schritte erneut.

Herunterladen und Installieren der Remotetools auf Windows Server

Laden Sie die Version der Remotetools herunter, die Ihrer Version von Visual Studio entsprechen.

Laden Sie auf dem Remotegerät oder Server, auf dem Sie debuggen möchten, statt auf dem Visual Studio-Computer, die richtige Version der Remotetools aus den Links in der folgenden Tabelle herunter, und installieren Sie sie.

  • Laden Sie das neueste Update der Remotetools für Ihre Version von Visual Studio herunter. Frühere Remotetools-Versionen sind nicht mit späteren Visual Studio-Versionen kompatibel. (Wenn Sie beispielsweise Visual Studio 2019 verwenden, laden Sie das neueste Update der Remotetools für Visual Studio 2019 herunter. Laden Sie in diesem Szenario die Remotetools für Visual Studio 2022 nicht herunter.)
  • Laden Sie die Remotetools mit der gleichen Architektur wie den Computer herunter, auf dem Sie sie installieren. Wenn Sie beispielsweise x86-Anwendungen auf einem Remotecomputer mit einem x64-Betriebssystem debuggen möchten, installieren Sie die x64-Remotetools. Installieren Sie die ARM64-Remotetools, um x86-, ARM- oder x64-Anwendungen auf einem ARM64-Betriebssystem zu debuggen.
Version Verknüpfung Hinweise
Visual Studio 2022 Fernwerkzeuge Kompatibel mit allen Visual Studio 2022-Versionen. Laden Sie die Version herunter, die Ihrem Gerätebetriebssystem (x86, x64 (AMD64) oder ARM64 entsprechen. In älteren Versionen von Windows Server finden Sie unter Entsperren des Dateidownloads Hilfe zum Herunterladen der Remotetools.
Visual Studio 2019 Fernwerkzeuge Remotetools für Visual Studio 2019 stehen über My.VisualStudio.com zur Verfügung. Wenn Sie dazu aufgefordert werden, treten Sie dem kostenlosen Visual Studio Dev Essentials Programm bei, oder melden Sie sich mit Ihrer Visual Studio-Abonnement-ID an. Laden Sie die Version herunter, die Ihrem Gerätebetriebssystem (x86, x64 (AMD64) oder ARM64 entsprechen. In älteren Versionen von Windows Server finden Sie unter Entsperren des Dateidownloads Hilfe zum Herunterladen der Remotetools.
Visual Studio 2017 Fernwerkzeuge Remotetools für Visual Studio 2017 sind über My.VisualStudio.com verfügbar. Wenn Sie dazu aufgefordert werden, treten Sie dem kostenlosen Visual Studio Dev Essentials Programm bei, oder melden Sie sich mit Ihrer Visual Studio-Abonnement-ID an. Laden Sie die Version herunter, die Ihrem Gerätebetriebssystem (x86, x64 (AMD64) oder ARM64 entsprechen. Wenn Sie Unterstützung beim Herunterladen der Remotetools unter Windows Server benötigen, lesen Sie die Informationen unter Entsperren des Dateidownloads.
Visual Studio 2015 Fernwerkzeuge Remotetools für Visual Studio 2015 stehen über My.VisualStudio.com zur Verfügung. Wenn Sie dazu aufgefordert werden, treten Sie dem kostenlosen Visual Studio Dev Essentials Programm bei, oder melden Sie sich mit Ihrer Visual Studio-Abonnement-ID an. Wenn Sie Unterstützung beim Herunterladen der Remotetools unter Windows Server benötigen, lesen Sie die Informationen unter Entsperren des Dateidownloads.
Visual Studio 2013 Fernwerkzeuge Downloadseite in der Visual Studio 2013-Dokumentation
Visual Studio 2012 Fernwerkzeuge Downloadseite in der Visual Studio 2012-Dokumentation
Version Verknüpfung Hinweise
Visual Studio 2019 Fernwerkzeuge Kompatibel mit allen Visual Studio 2019-Versionen. Laden Sie die Version herunter, die Ihrem Gerätebetriebssystem (x86, x64 (AMD64) oder ARM64 entsprechen. Wenn Sie Unterstützung beim Herunterladen der Remotetools unter Windows Server benötigen, lesen Sie die Informationen unter Entsperren des Dateidownloads. Öffnen Sie für die neueste Version der Remotetools das Visual Studio 2022-Dokument.
Visual Studio 2017 Fernwerkzeuge Kompatibel mit allen Visual Studio 2017-Versionen. Laden Sie die Version herunter, die Ihrem Gerätebetriebssystem (x86, x64 (AMD64) oder ARM64 entsprechen. Wenn Sie Unterstützung beim Herunterladen der Remotetools unter Windows Server benötigen, lesen Sie die Informationen unter Entsperren des Dateidownloads.
Visual Studio 2015 Fernwerkzeuge Remotetools für Visual Studio 2015 stehen über My.VisualStudio.com zur Verfügung. Wenn Sie dazu aufgefordert werden, treten Sie dem kostenlosen Visual Studio Dev Essentials Programm bei, oder melden Sie sich mit Ihrer Visual Studio-Abonnement-ID an. Wenn Sie Unterstützung beim Herunterladen der Remotetools unter Windows Server benötigen, lesen Sie die Informationen unter Entsperren des Dateidownloads.
Visual Studio 2013 Fernwerkzeuge Downloadseite in der Visual Studio 2013-Dokumentation
Visual Studio 2012 Fernwerkzeuge Downloadseite in der Visual Studio 2012-Dokumentation

Sie können den Remotedebugger ausführen, indem Sie msvsmon.exe auf den Remotecomputer kopieren, anstatt die Remotetools zu installieren. Der Remote-Debugger-Konfigurationsassistent (rdbgwiz.exe) ist jedoch nur verfügbar, wenn Sie die Remote-Tools installieren. Möglicherweise müssen Sie den Assistenten für die Konfiguration verwenden, wenn Sie den Remotedebugger als Dienst ausführen möchten. Weitere Informationen finden Sie unter (Optional) Konfigurieren des Remotedebuggers als Dienst.

Anmerkung

  • Um Windows 10- oder höher-Apps auf ARM-Geräten zu debuggen, verwenden Sie ARM64, das mit der neuesten Version der Remotetools verfügbar ist.
  • Zum Debuggen von Windows 10-Apps auf Windows RT-Geräten verwenden Sie ARM (nur im Download der Visual Studio 2015-Remotetools verfügbar).
  • Um x64-Apps auf einem ARM64-Betriebssystem zu debuggen, führen Sie die x64-msvsmon.exe aus, die mit den ARM64-Remotetools installiert ist.

Einrichten des Remotedebuggers unter Windows Server

  1. Suchen und starten Sie auf dem Remotecomputer im Menü Start den Remotedebugger.

    Wenn Sie nicht über Administratorberechtigungen auf dem Remotecomputer verfügen, klicken Sie mit der rechten Maustaste auf die Remotedebugger--App, und wählen Sie Als Administrator ausführenaus. Andernfalls starten Sie es einfach normal.

    Wenn Sie planen, einen Prozess anzufügen, der als Administrator ausgeführt wird oder unter einem anderen Benutzerkonto (z. B. IIS) ausgeführt wird, klicken Sie mit der rechten Maustaste auf die Remotedebugger--App, und wählen Sie Als Administrator ausführenaus. Weitere Informationen finden Sie unter Ausführen des Remotedebuggers als Administrator.

  2. Wenn Sie den Remotedebugger zum ersten Mal starten (oder bevor Sie ihn konfiguriert haben), wird der Assistent Remote-Debugging-Konfiguration angezeigt.

    Wählen Sie in den meisten Szenarien Next aus, bis Sie zur Seite Konfigurieren der Windows-Firewall Des Assistenten gelangen.

    Screenshot der Remotedebuggerkonfiguration.

    Screenshot der Remotedebuggerkonfiguration.

    Wenn die Windows-Webdienst-API nicht installiert ist, was nur unter Windows Server 2008 R2 geschieht, wählen Sie die Schaltfläche Installieren aus.

  3. Wählen Sie mindestens einen Netzwerktyp aus, auf dem Sie die Remotetools verwenden möchten. Wenn die Computer über eine Domäne verbunden sind, müssen Sie das erste Element auswählen. Wenn die Computer über eine Arbeitsgruppe oder Heimnetzgruppe verbunden sind, wählen Sie das zweite oder dritte Element entsprechend aus.

    Wählen Sie als Nächstes Fertig stellen aus, um den Remotedebugger zu starten.

    Wählen Sie Remotedebugging konfigurieren aus, um den Remotedebugger zu starten.

  4. Wenn die Konfiguration abgeschlossen ist, wird das Fenster Remotedebugger angezeigt.

    Screenshot des Remotedebugger-Fensters

    Screenshot des Remotedebugger-Fensters

    Der Remotedebugger wartet jetzt auf eine Verbindung. Verwenden Sie den Servernamen und die Portnummer, die angezeigt wird, um die Remoteverbindungskonfiguration in Visual Studio festzulegen.

Um den Remotedebugger zu beenden, wählen Sie Datei>Beenden aus. Sie können sie über das Menü Start oder über die Befehlszeile neu starten:

<Remote debugger installation directory>\msvsmon.exe

Anmerkung

Wenn Sie Berechtigungen für zusätzliche Benutzer hinzufügen müssen, ändern Sie den Authentifizierungsmodus oder die Portnummer für den Remotedebugger, lesen Sie Konfigurieren des Remotedebuggers.

Informationen zum Ausführen des Remotedebuggers als Dienst finden Sie unter Ausführen des Remotedebuggers als Dienst.

Anfügen an die ASP.NET-Anwendung vom Visual Studio-Computer aus

Ab Visual Studio 2022, Version 17.10 Preview 2, wurde das Dialogfeld "An Prozess anhängen" geändert. Wenn Sie Anweisungen benötigen, die dem älteren Dialogfeld entsprechen, wechseln Sie zur Visual Studio 2019-Ansicht (obere linke Versionsauswahl im Artikel).

  1. Öffnen Sie auf dem Visual Studio-Computer die Projektmappe, die Sie debuggen möchten (MyASPApp, wenn Sie alle Schritte in diesem Artikel ausführen).

  2. Klicken Sie in Visual Studio auf Debuggen > An den Prozess anhängen (STRG+ALT+P).

    Tipp

    In Visual Studio 2017 und höheren Versionen können Sie erneut eine Verbindung zu dem zuvor angehängten Prozess herstellen, indem Sie Debuggen > Erneut mit Prozess verbinden... (UMSCHALT+ALT+P) verwenden.

  3. Legen Sie den Verbindungstyp auf Remote(Windows)fest.

    Die Option Verbindungsziel wird angezeigt.

    Legen Sie das Verbindungsziel auf den <Namen des Remotecomputers> fest, und drücken Sie EINGABETASTE.

    Stellen Sie sicher, dass Visual Studio den erforderlichen Port zum Computernamen hinzufügt, der im Format angezeigt wird: <Remote-Computername>:port

    In Visual Studio 2022 sollte <Remotecomputername>:4026 angezeigt werden.

    Der Port ist erforderlich. Wenn die Portnummer nicht angezeigt wird, fügen Sie sie manuell hinzu.

  1. Öffnen Sie auf dem Visual Studio-Computer die Projektmappe, die Sie debuggen möchten (MyASPApp, wenn Sie alle Schritte in diesem Artikel ausführen).

  2. Klicken Sie in Visual Studio auf Debuggen > An den Prozess anhängen (STRG+ALT+P).

    Tipp

    In Visual Studio 2017 und höheren Versionen können Sie erneut eine Verbindung zu dem zuvor angehängten Prozess herstellen, indem Sie Debuggen > Erneut mit Prozess verbinden... (UMSCHALT+ALT+P) verwenden.

  3. Legen Sie das Feld „Qualifizierer“ auf <Name_des_Remotecomputers> fest, und drücken Sie die EINGABETASTE.

    Stellen Sie sicher, dass Visual Studio den erforderlichen Port zum Computernamen hinzufügt, der im Format angezeigt wird: <Remote-Computername>:port

    In Visual Studio 2019 sollte <Name_des_Remotecomputers>:4024 angezeigt werden.

    Der Port ist erforderlich. Wenn die Portnummer nicht angezeigt wird, fügen Sie sie manuell hinzu.

  1. Wählen Sie Aktualisieren aus.

    Im Fenster Verfügbare Prozesse sollten einige Prozesse angezeigt werden.

    Wenn keine Prozesse angezeigt werden, versuchen Sie, die IP-Adresse anstelle des Remotecomputernamens zu verwenden (der Port ist erforderlich). Sie können ipconfig in einer Befehlszeile verwenden, um die IPv4-Adresse abzurufen.

    Wenn Sie die Schaltfläche Suchen verwenden möchten, müssen Sie möglicherweise den ausgehenden UDP-Port 3702 auf dem Server öffnen.

  2. Aktivieren Sie Prozesse aller Benutzer anzeigen.

  3. Geben Sie den ersten Buchstaben eines Prozessnamens ein, um schnell w3wp.exe für ASP.NET 4.5 zu finden.

    Wenn mehrere Prozesse mit w3wp.exeangezeigt werden, überprüfen Sie die Spalte "Benutzername". In einigen Szenarien zeigt die Spalte "Benutzername" ihren App-Poolnamen an, z. B. IIS APPPOOL\DefaultAppPool. Wenn der App-Pool angezeigt wird, besteht eine einfache Möglichkeit zum Identifizieren des richtigen Prozesses darin, einen neuen benannten App-Pool für die App-Instanz zu erstellen, die Sie debuggen möchten, und dann finden Sie ihn ganz einfach in der Spalte "Benutzername".

    Screenshot des Dialogfelds „An Prozess anhängen“.

    Screenshot des Dialogfelds „An Prozess anhängen“.

  4. Wählen Sie aus und fügen Siean.

  5. Öffnen Sie die Website des Remotecomputers. Gehen Sie in einem Browser zu http://<Name_des_Remotecomputers>.

    Sie sollten die ASP.NET-Webseite sehen können.

  6. Wählen Sie in der ausgeführten ASP.NET Anwendung den Link zur Seite Datenschutz aus.

    Der Haltepunkt sollte in Visual Studio erreicht werden.

    Wenn Sie den Haltepunkt nicht anfügen oder erreichen können, siehe Problembehandlung beim Remotedebuggen.

Problembehandlung bei der IIS-Bereitstellung

  • Wenn Sie keine Verbindung mit dem Host herstellen können, indem Sie den Hostnamen verwenden, versuchen Sie stattdessen die IP-Adresse.
  • Stellen Sie sicher, dass die erforderlichen Ports auf dem Remoteserver geöffnet sind.
  • Stellen Sie sicher, dass die in Ihrer App verwendete Version von ASP.NET mit der Version identisch ist, die Sie auf dem Server installiert haben. Für Ihre App können Sie die Version auf der Seite Eigenschaften anzeigen und festlegen. Um die App auf eine andere Version festzulegen, muss diese Version installiert werden.
  • Wenn die App versucht, sich zu öffnen, aber eine Zertifikatwarnung angezeigt wird, wählen Sie aus, der Website zu vertrauen. Wenn Sie die Warnung bereits geschlossen haben, können Sie das Veröffentlichungsprofil, eine *.pubxml-Datei, in Ihrem Projekt bearbeiten und das folgende Element hinzufügen (nur für Test): <AllowUntrustedCertificate>true</AllowUntrustedCertificate>
  • Starten Sie die App nach der Bereitstellung in IIS, um zu testen, ob sie ordnungsgemäß bereitgestellt wurde.
  • Überprüfen Sie das Ausgabefenster in Visual Studio auf Statusinformationen, und überprüfen Sie Ihre Fehlermeldungen.

Öffnen der erforderlichen Ports unter Windows Server

In den meisten Setups werden erforderliche Ports durch die Installation von ASP.NET und dem Remotedebugger geöffnet. Möglicherweise müssen Sie jedoch überprüfen, ob Die Ports geöffnet sind.

Anmerkung

Auf einer Azure-VM müssen Sie Ports über die Netzwerksicherheitsgruppeöffnen.

Erforderliche Ports:

  • 80: Erforderlich für IIS.
  • 4024: Erforderlich für das Remotedebugging von Visual Studio 2019 (weitere Informationen finden Sie unter Remotedebuggerportzuweisungen).

  • UDP 3702 (optional): Der Ermittlungsport aktiviert für Sie die Schaltfläche Suchen, wenn Sie den Remotedebugger in Visual Studio anfügen.

Darüber hinaus sollten diese Ports bereits von der ASP.NET Installation geöffnet werden:

  • 8172: (Optional) Erforderlich für web Deploy zum Bereitstellen der App aus Visual Studio.

Öffnen eines Ports

  1. Um einen Port auf Windows Server zu öffnen, öffnen Sie das Menü Start, suchen Sie nach Windows Defender Firewall oder Windows-Firewall mit erweiterter Sicherheit.

    Wählen Sie für Windows Defender Firewall die Optoin Erweiterte Einstellungen aus.

  2. Klicken Sie dann auf Eingangsregeln > Neue Regel > Port. Wählen Sie Weiter und geben Sie unter Bestimmte lokale Ports: die Portnummer ein, wählen Sie Weiter aus, dann Verbindung zulassen, dann noch einmal „Weiter“ und geben Sie den Namen (IIS, Web Deploy oder msvsmon) für die Eingangsregel ein.

    Weitere Informationen zum Konfigurieren der Windows-Firewall finden Sie unter Konfigurieren der Windows-Firewall für das Remotedebugging.

  3. Erstellen Sie weitere Regeln für die anderen erforderlichen Ports.