Freigeben über


Gewusst wie: Bereitstellen eines Webanwendungsprojekts mit One-Click-Veröffentlichung und Webbereitstellung

In diesem Thema wird erläutert, wie ein Webanwendungsprojekt mit der One-Click-Veröffentlichung und der Web Deploy-Veröffentlichungsmethode bereitgestellt wird. Die One-Click-Veröffentlichung mit der Web Deploy-Veröffentlichungsmethode ermöglicht es Ihnen, die meisten Aufgaben zum Bereitstellen einer Webanwendung zu automatisieren.

Zur Verwendung dieser Funktionen muss Web Deploy auf dem Entwicklungscomputer installiert sein, und auf dem Zielwebserver muss dieselbe Version von Web Deploy installiert sein. (Web Deploy wird bei der Installation von Visual Studio standardmäßig auf dem Entwicklungscomputer installiert.) Wenn Sie das Projekt bei einem Hostinganbieter (Drittanbieter) bereitstellen, muss der Anbieter die Version von ASP.NET 4, für die Ihre Webanwendung entwickelt wurde, und One-Click-Veröffentlichung unterstützen. Informationen zur Verwendung der One-Click-Veröffentlichung mit anderen Veröffentlichungsmethoden finden Sie unter Gewusst wie: Bereitstellen eines Webanwendungsprojekts mit der One-Click-Veröffentlichung ohne Webbereitstellung.

Die Bereitstellung eines Webanwendungsprojekts mit der One-Click-Veröffentlichung kann die folgenden zusätzlichen Aufgaben beinhalten, die nicht in diesem Verfahren beschrieben werden:

  • Angeben von Datenbankbereitstellungsoptionen. Wenn das bereitzustellende Webprojekt eine Datenbank verwendet und während der Bereitstellung Skripts ausgeführt werden müssen, um die Datenbankstrukturen oder Daten in der Zielumgebung einzurichten, müssen Sie Einstellungen auf der Registerkarte SQL packen/veröffentlichen der Projektseite Eigenschaften eingeben. Weitere Informationen finden Sie unter Gewusst wie: Bereitstellen einer Datenbank mit eine–m Webanwendungsprojekt.

  • Angeben von Web.config-Dateitransformationen. Die Web.config-Dateien enthalten normalerweise Einstellungen, die sich je nach der Umgebung, in der die Anwendung ausgeführt wird, unterscheiden. Beispiel: Mit der Web.config-Datei auf dem Entwicklungscomputer kann z. B. Debuggen aktiviert werden, doch in der Regel soll für eine Anwendung, die auf einem Produktionsserver ausgeführt wird, kein Debuggen aktiviert werden. Sie können Transformationsdateien erstellen, die das Ändern von Web.config-Einstellungen während der Bereitstellung automatisieren. Weitere Informationen finden Sie unter Gewusst wie: Transformieren von "Web.config" beim Bereitstellen eines Webanwendungsprojekts.

Weitere Informationen zur Bereitstellung von Webanwendungsprojekten finden Sie unter Einstieg in die ASP.NET-Bereitstellung.

Angeben von Dateien und Einstellungen für die Bereitstellung

Sie verwenden die Registerkarte Web packen/veröffentlichen der Projektseite Eigenschaften, um Einstellungen zu konfigurieren, die die in die Bereitstellung der Webanwendung einzuschließenden Dateien bestimmen. Die Standardeinstellungen auf dieser Registerkarte funktionieren für viele typische Szenarien. Sie können dieses Verfahren überspringen, wenn die folgenden Bedingungen zutreffen:

  • Sie möchten nur die Dateien bereitstellen, die zum Ausführen der Website erforderlich sind. Dies kann z. B. der Fall sein, wenn Quellcodedateien in Assemblys kompiliert werden und Sie nur die Assemblys auf den Zielserver kopieren möchten.

  • Sie müssen keine IIS-Einstellungen vom Quellcomputer auf dem Zielserver replizieren. Dies kann z. B. der Fall sein, wenn das bereitzustellende Projekt ein lokales IIS-Webprojekt ist und Sie Fehlerbehandlungsregeln für die IIS-Anwendung eingerichtet haben, diese Regeln aber nicht auf dem Zielserver replizieren müssen. Wenn es sich bei dem bereitzustellenden Projekt um ein Dateisystemwebprojekt handelt, sind keine zu replizierenden IIS-Einstellungen vorhanden.

So geben Sie Dateien und Einstellungen für die Bereitstellung an

  1. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf den Projektnamen und dann auf Eigenschaften.

  2. Klicken Sie auf die Registerkarte Web packen/veröffentlichen.

    Die Registerkarte Web packen/veröffentlichen wird wie in der folgenden Abbildung dargestellt angezeigt:

    Dialogfeld "Verpacken/Veröffentlichen"

  3. Wählen Sie in der Liste Konfiguration die Buildkonfiguration aus, für die Sie Bereitstellungseinstellungen konfigurieren möchten.

    Sie können die Bereitstellung für die Debug- oderReleasebuildkonfigurationen oder füreine im Dialogfeld Konfigurations-Manager erstellte benutzerdefinierte Buildkonfiguration konfigurieren. Sie können z. B. unterschiedliche Einstellungen für die Bereitstellung auf einem Testserver und die Bereitstellung auf einem Produktionsserver verwenden.

    Der Standardwert für die Konfiguration ist Aktiv. Dies bedeutet, dass die Einstellungen auf dieser Registerkarte für die derzeit für das Projekt ausgewählte Buildkonfiguration gelten. Die momentan ausgewählte Buildkonfiguration wird auf der Hauptsymbolleiste und im Dialogfeld Konfigurations-Manager angezeigt. (Um das Dialogfeld Konfigurations-Manager zu öffnen, wählen Sie den entsprechenden Eintrag im Menü Erstellen aus.)

  4. Wählen Sie in der Dropdownliste Bereitzustellende Elemente (gilt für alle Bereitstellungsmethoden) eine der folgenden Optionen aus:

    • Nur zur Ausführung der Anwendung erforderliche Dateien. Dateien, die nicht zum Ausführen der Website benötigt werden, werden nicht auf dem Zielserver bereitgestellt. Hierzu gehören z. B. in Assemblys kompilierte Codedateien.

    • Alle Dateien im Projekt. Alle im Projekt enthaltenen Dateien werden auf dem Zielserver bereitgestellt. Dateien, die im Projektordner, aber nicht im Projekt enthalten sind, werden ausgeschlossen.

    • Alle Dateien in diesem Projektordner. Alle Dateien im Projektordner werden auf dem Zielserver bereitgestellt, auch wenn sie vom Projekt ausgeschlossen werden.

  5. Wenn das Debuggen voraussichtlich nie auf dem Zielserver aktiviert werden soll, aktivieren Sie das Kontrollkästchen Generierte Debugsymbole ausschließen.

    Das Deaktivieren dieser Option bewirkt, dass PDB-Dateien auf dem Zielserver bereitgestellt werden. Diese Dateien sind zum Debuggen erforderlich. Normalerweise sind PDB-Dateien zwar auf Produktionsservern nicht erwünscht, jedoch unter Umständen auf Testservern.

  6. Wenn der Ordner "App_Data" Dateien enthält, die nicht auf dem Zielserver bereitgestellt werden sollen, aktivieren Sie das Kontrollkästchen Dateien aus dem App_Data-Ordner ausschließen.

    Zum Beispiel kann sich während der Entwicklung eine SQL Server Express-MDF-Datei im Ordner "App_Data" befinden. Sie beabsichtigen jedoch, die Datenbank mit automatisch generierten Skripts auf dem Produktionsserver bereitzustellen. In diesem Fall würden Sie diese Option bei der Bereitstellung auf dem Produktionsserver auswählen, da es auf dem Produktionsserver keine Verwendung für die MDF-Datei gibt.

  7. Wenn Sie Datenbankskripts ausführen möchten, die während der Bereitstellung auf der Registerkarte SQL packen/veröffentlichen angegeben werden, aktivieren Sie das Kontrollkästchen Alle auf der Registerkarte "SQL packen/veröffentlichen" konfigurierten Datenbanken einschließen. (Die Registerkarte SQL packen/veröffentlichen wird in einem Verfahren an späterer dieses Themas beschrieben.)

    In einem typischen Szenario werden Skripts zum Konfigurieren von Datenbanken nur bei der ersten Bereitstellung einer Webanwendung ausgeführt. Wenn Sie Updates für eine Webanwendung bereitstellen, müssen normalerweise keine Updates für die Datenbank bereitgestellt werden.

  8. Wenn das bereitgestellte Webprojekt ein IIS-Webprojekt ist und Sie die IIS-Einstellungen des Projekts an die Zielumgebung weitergeben möchten, aktivieren Sie das Kontrollkästchen Alle IIS-Einstellungen gemäß Konfiguration in IIS-Manager einschließen.

    Mit IIS-Einstellungen werden Optionen wie Authentifizierungsmethoden und die Reaktion der Webanwendung auf Fehler festgelegt. Wenn Sie das Projekt auf einem Server im Unternehmensnetzwerk bereitstellen, können Sie den Zielserver bei der Bereitstellung auf einem Testserver wie den Entwicklungsserver konfigurieren, bei der Bereitstellung auf einem Produktionsserver jedoch nicht. Wenn Sie das Projekt bei einem Hostinganbieter bereitstellen, verfügt das für die Bereitstellung verwendete Konto in der Regel nicht über die erforderlichen Administratorberechtigungen, um Änderungen an IIS-Einstellungen vorzunehmen. Aktivieren Sie diese Option in diesem Fall nicht.

    Wenn das aktuelle Webprojekt kein IIS-Webprojekt ist, sind diese Option und die Option für Anwendungspooleinstellungen deaktiviert.

    Hinweis

    Geerbte IIS-Einstellungen werden nicht an den Zielserver weitergegeben.Angenommen, die bereitzustellende IIS-Webanwendung befindet sich unter der Standardwebsite auf dem Quellserver und für die Standardwebsite ist die Windows-Authentifizierung auf true festgelegt.Wenn Sie diese Website für die Standardwebsite auf einem Server bereitstellen, bei dem für die Standardwebsite die Windows-Authentifizierung auf false festgelegt wurde, ist der Wert der Windows-Authentifizierung für die bereitgestellte Website false.Dies gilt, auch wenn Sie das Kontrollkästchen Alle IIS-Einstellungen gemäß Konfiguration in IIS-Manager einschließen aktivieren.In diesem Fall müssen Sie die Einstellungen auf dem Zielserver manuell konfigurieren.

  9. Wenn Sie die Option Alle IIS-Einstellungen gemäß Konfiguration in IIS-Manager einschließen aktiviert haben und Anwendungspooleinstellungen aus dem Webprojekt in der Zielumgebung duplizieren möchten, aktivieren Sie das Kontrollkästchen Von diesem Webprojekt verwendete Anwendungspooleinstellungen einschließen.

Erstellen eines Veröffentlichungsprofils

Bevor Sie die Webanwendung veröffentlichen können, müssen Sie ein Veröffentlichungsprofil erstellen, das festlegt, wie die Veröffentlichung erfolgt. Sie können mehrere Profile mit verschiedenen Einstellungen erstellen. Bevor Sie auf die Schaltfläche Veröffentlichen klicken, können Sie das Profil auswählen, das die gewünschten Einstellungen besitzt. Die Veröffentlichungsprofileinstellungen gelten für die aktive Buildkonfiguration (z. B. Debug oder Release). Im folgenden Verfahren wird das Erstellen eines Profils erläutert.

So erstellen Sie ein Veröffentlichungsprofil

  1. Klicken Sie im Menü Erstellen auf Projektname veröffentlichen.

    Das Dialogfeld Web veröffentlichen wird angezeigt.

    Dialogfeld "Profil veröffentlichen"

  2. Geben Sie im Feld Profil veröffentlichen einen Namen für das neue Profil ein.

  3. Wählen Sie in der Dropdownliste Veröffentlichungsmethode die Option Webbereitstellung aus.

    Informationen zum Verwenden einer der anderen Methoden (FTP, Dateisystem oder FPSE) finden Sie unter Gewusst wie: Bereitstellen eines Webanwendungsprojekts mit der One-Click-Veröffentlichung ohne Webbereitstellung.

  4. Geben Sie einen Wert für Dienst-URL ein.

    Geben Sie bei einer Veröffentlichung auf dem Entwicklungscomputer (d. h. Ihrem Computer) localhost oder den Namen des Computers ein. Sie benötigen Administratorrechte auf dem Computer.

    Wenn Sie das Projekt auf einem Server im Netzwerk des Unternehmens veröffentlichen, geben Sie eine der folgenden URLs ein:

    https://ServerName

    https://ServerName/msdeployagentservice

    Der Zielserver muss für den Webbereitstellungs-Agent-Dienst (MSDepSvc, auch als Remote-Agent-Dienst bezeichnet) eingerichtet sein, und Sie benötigen Administratorrechte auf dem Zielserver. Informationen zum Einrichten des Zielservers finden Sie im Thema zum Webbereitstellungs-Remotedienst auf der Microsoft TechNet-Website (möglicherweise in englischer Sprache).

    Bei einer Veröffentlichung bei einem Hostinganbieter erhalten Sie den erforderlichen Wert vom Anbieter. Der Werte kann in einem der folgenden Formate eingegeben werden:

    Der Hostinganbieter muss den Zielserver für den Webverwaltungsdienst (WMSvc) einrichten, der zusammen mit dem Webbereitstellungshandler verwendet wird. Informationen zum Einrichten des Zielservers finden Sie im Thema zum Konfigurieren des Webbereitstellungshandlers auf der Microsoft TechNet-Website (möglicherweise in englischer Sprache). Diese Methode wird in der Regel von Hostinganbietern verwendet, kann aber auch für das interne Firmennetzwerk eingesetzt werden. Wenn Sie diese Methode verwenden, benötigen Sie keine Administratorrechte auf dem Zielserver.

  5. Geben Sie einen Wert für Website/Anwendung ein.

    Geben Sie für eine Veröffentlichung auf dem Entwicklungscomputer oder einem Server im Unternehmensnetzwerk den in IIS-Manager angezeigten Website- und Anwendungsnamen ein. Wenn Sie auf der Standardwebsite veröffentlichen und der Anwendungsname "MyApplication" lautet, geben Sie z. B. "Standardwebsite/MyApplication" ein.

    Bei einer Veröffentlichung bei einem Hostinganbieter erhalten Sie den erforderlichen Wert vom Anbieter. Bei dem Wert handelt es sich in der Regel um einen Domänenname (z. B. contoso.com) oder eine Domäne und einen Anwendungsnamen (z. B. contoso.com/MyApplication).

  6. Wenn Sie keine IIS-Einstellungen bereitstellen, aktivieren Sie das Kontrollkästchen Als IIS-Anwendung im Ziel markieren.

    Diese Option wird nicht angezeigt, wenn Sie IIS-Einstellungen bereitstellen, da der IIS-Anwendungsstatus des Webprojekts eine der bereitgestellten IIS-Einstellungen ist.

    Dieses Kontrollkästchen wird normalerweise aktiviert, wenn das Kontrollkästchen Alle IIS-Einstellungen gemäß Konfiguration in IIS-Manager einschließen auf der Registerkarte Web packen/veröffentlichen der Projektseite Eigenschaften deaktiviert ist. Es gibt nur sehr wenige Szenarien, in denen ein Webprojekt nicht als IIS-Anwendung auf dem Zielwebserver bereitgestellt wird. Angenommen, das bereitgestellte Projekt ist eigentlich keine Webanwendung, sondern enthält nur virtuellen Verzeichnisinhalt wie Bilder, XML-Dateien usw. In diesem Fall können Sie das Kontrollkästchen deaktivieren, damit das bereitgestellte Projekt nicht als IIS-Anwendung eingerichtet wird.

  7. Wenn Dateien auf dem Zielserver, für die im Webprojekt keine entsprechenden Dateien vorhanden sind, bei der One-Click-Veröffentlichung gelöscht werden sollen, deaktivieren Sie das Kontrollkästchen Zusätzliche Dateien am Ziel belassen.

    Unter den folgenden Umständen werden beim Veröffentlichungsprozess Dateien auf dem Zielserver gelöscht:

    • Sie deaktivieren die Option Zusätzliche Dateien am Ziel belassen.

    • Die Dateien sind bereits am Veröffentlichungsspeicherort auf dem Zielserver oder in Unterordnern vorhanden.

    • Die gleichen Dateien sind nicht in den gleichen Ordnern im Webanwendungsprojekt vorhanden.

    Hinweis

    Wenn Sie das Kontrollkästchen Zusätzliche Dateien am Ziel belassen deaktivieren und sich die Webanwendung in einem Unterordner befindet, wenn Sie ein Projekt im Stammordner bereitstellen, wird der Unterordner gelöscht.Angenommen, ein Projekt ist für die Hauptwebsite unter contoso.com und ein anderes Projekt für einen Blog unter contoso.com/blog bestimmt.Die Bloganwendung befindet sich in einem Unterordner.Wenn Sie das Kontrollkästchen Zusätzliche Dateien am Ziel belassen deaktivieren, wird die Bloganwendung gelöscht, wenn Sie das Hauptprojekt bereitstellen.

  8. Wenn Sie bei einem Hostinganbieter veröffentlichen und dieser Ihnen empfiehlt, nicht vertrauenswürdige Zertifikate zuzulassen, aktivieren Sie das Kontrollkästchen Nicht vertrauenswürdiges Zertifikat zulassen.

    SicherheitshinweisSicherheitshinweis

    Wenn Sie dieses Kontrollkästchen aktivieren, darf das Feld Dienst-URL keine Tippfehler enthalten.Andernfalls kann es passieren, dass Sie die Dateien zu einer böswilligen Website senden, deren URL der beabsichtigten URL ähnelt.

  9. Geben Sie in den Feldern Benutzername und Kennwort Anmeldeinformationen für ein Konto ein, das über ausreichende Berechtigungen zum Ausführen der Bereitstellungsaufgaben auf dem Zielwebserver verfügt.

    Bei der Veröffentlichung bei einem Hostinganbieter werden diese Informationen vom Hostinganbieter bereitgestellt.

  10. Klicken Sie auf Speichern, um das Profil zu speichern.

Veröffentlichen der Webanwendung

Die One-Click-Veröffentlichung vereinfacht das Bereitstellen einer Webanwendung und Aktualisieren der Anwendung nach der Bereitstellung. Wenn Sie nach der ersten Bereitstellung auf die Schaltfläche Veröffentlichen klicken, wird von Visual Studio ermittelt, welche Änderungen an der Website vorgenommen wurden, und auf dem Zielserver werden nur die Änderungen bereitgestellt.

Hinweis

Bevor Sie die Webanwendung bereitstellen, müssen Sie ggf. auch Datenbank- und Web.config-Transformationsoptionen angeben.Weitere Informationen finden Sie unter Gewusst wie: Bereitstellen einer Datenbank mit eine–m Webanwendungsprojekt und Gewusst wie: Transformieren von "Web.config" beim Bereitstellen eines Webanwendungsprojekts.

So veröffentlichen Sie die Webanwendung

  • Klicken Sie im Dialogfeld Web veröffentlichen oder auf der Symbolleiste One-Click-Webveröffentlichung auf die Schaltfläche Veröffentlichen.

    Hinweis

    Wenn die Symbolleiste One-Click-Webveröffentlichung nicht angezeigt wird, klicken Sie mit der rechten Maustaste auf das Hauptmenü, und wählen Sie One-Click-Webveröffentlichung aus.

    Wenn Sie das erste Mal auf die Schaltfläche Veröffentlichen klicken, werden von Visual Studio und Web Deploy alle erforderlich Aufgaben ausgeführt, um das Webprojekt auf dem Zielserver einzurichten. Wenn Sie erneut auf die Schaltfläche Veröffentlichen klicken, werden nur Änderungen bereitgestellt. Angenommen, die Website besteht aus 100 Webseiten, und Sie fügen eine Webseite hinzu. Wenn Sie erneut auf Veröffentlichen klicken, wird nur die neue Webseite auf den Zielserver kopiert.

    Hinweis

    Datenbankänderungen werden nicht automatisch bereitgestellt.Datenbankeinstellungen müssen normalerweise nach der ersten Bereitstellung geändert werden, um zu verhindern, dass Datenbankskripts während nachfolgender Bereitstellungen ausgeführt werden.Weitere Informationen finden Sie unter Gewusst wie: Bereitstellen einer Datenbank mit eine–m Webanwendungsprojekt.

Hinweis

Die One-Click-Veröffentlichung ist ein komplexer Prozess, bei dem unterschiedliche Bereitstellungsaufgaben anhand verschiedener Technologien automatisiert werden.Informationen zum Beheben von Fehlern finden Sie unter Übersicht über die Bereitstellung von ASP.NET-Webanwendungsprojekten und FAQ zur Bereitstellung von ASP.NET-Webanwendungsprojekten.

Siehe auch

Konzepte

Einstieg in die ASP.NET-Bereitstellung

Übersicht über die Bereitstellung von ASP.NET-Webanwendungsprojekten

Weitere Ressourcen

FAQ zur Bereitstellung von ASP.NET-Webanwendungsprojekten