Manuelles Installieren von Webpaketen

von Jason Lee

In diesem Thema wird beschrieben, wie Sie ein Webbereitstellungspaket manuell in Internetinformationsdienste (IIS) importieren.

Im Thema Erstellen und Verpacken von Webanwendungsprojekten wurde beschrieben, wie Sie mit dem IIS-Webbereitstellungstool (Web Deploy) in Verbindung mit dem Microsoft-Build-Engine (MSBuild) und der Web Publishing Pipeline (WPP) Ihre Webanwendungsprojekte in eine einzelne ZIP-Datei packen können. Diese Datei, allgemein bekannt als Webbereitstellungspaket (oder einfach als Bereitstellungspaket), enthält alle Inhalts- und Konfigurationsinformationen, die IIS benötigt, um Ihre Webanwendung auf einem Webserver neu zu erstellen.

Nachdem Sie ein Webbereitstellungspaket erstellt haben, können Sie es auf verschiedene Weise auf einem IIS-Server veröffentlichen. In vielen Szenarien sollten Sie die Integrationspunkte zwischen MSBuild, WPP und Web Deploy nutzen, um Webpakete remote im Rahmen eines automatisierten oder einstufigen Build- und Bereitstellungsprozesses zu erstellen und zu installieren. Dieser Prozess wird unter Bereitstellen von Webpaketen beschrieben. Dies ist jedoch nicht immer möglich. Angenommen, Sie möchten eine Webanwendung in einer mit dem Internet verbundenen Produktionsumgebung bereitstellen. Aus Sicherheitsgründen befindet sich eine solche Produktionsumgebung zumindest wahrscheinlich hinter einer Firewall in einem Subnetz, das vom Buildserver getrennt ist, in einem Umkreisnetzwerk (auch als DMZ, demilitarisierte Zone und überprüftes Subnetz bezeichnet). In vielen Fällen befindet sich die Produktionsumgebung in einer separaten Domäne oder in einem physisch isolierten Netzwerk.

In diesen Szenarien kann die einzige Option darin bestehen, das Webpaket auf den Zielserver zu portieren und es manuell in IIS zu importieren. Obwohl dieser Ansatz eine automatisierte Bereitstellung verhindert, ist es immer noch eine sehr effektive Technik zum Veröffentlichen einer Webanwendung: Sie kopieren einfach eine einzelne ZIP-Datei auf Ihren Webserver und verwenden einen Assistenten, um Sie durch den Importprozess zu führen.

Dieses Thema ist Teil einer Reihe von Tutorials, die sich auf die Unternehmensbereitstellungsanforderungen eines fiktiven Unternehmens namens Fabrikam, Inc. beziehen. In dieser Tutorialreihe wird eine Beispiellösung – die Contact Manager-Lösung – verwendet, um eine Webanwendung mit einem realistischen Maß an Komplexität darzustellen, einschließlich einer ASP.NET MVC 3-Anwendung, einem WCF-Dienst (Windows Communication Foundation) und einem Datenbankprojekt.

Aufgabenübersicht

Sie müssen diese allgemeinen Aufgaben ausführen, um ein Webbereitstellungspaket in IIS zu importieren:

  • Erstellen Sie ein Webbereitstellungspaket über die MSBuild-Befehlszeile, Team Build oder Visual Studio 2010.
  • Kopieren Sie das Webpaket auf den Zielwebserver.
  • Verwenden Sie den Assistenten zum Importieren von Anwendungspaketen im IIS-Manager, um das Webpaket zu installieren und Werte für Variablen wie Verbindungszeichenfolgen und Dienstendpunkte bereitzustellen.

In diesem Thema erfahren Sie, wie Sie diese Prozeduren ausführen. Bei den Aufgaben und exemplarischen Vorgehensweisen in diesem Thema wird vorausgesetzt, dass Sie bereits mit den Konzepten hinter Webpaketen, Web Deploy und WPP vertraut sind. Weitere Informationen finden Sie unter Erstellen und Verpacken von Webanwendungsprojekten.

Hinweis

Dieses Thema wird am besten in Verbindung mit Konfigurieren eines Webservers für die Webbereitstellungsveröffentlichung (Offlinebereitstellung) verwendet, in dem erläutert wird, wie die erforderlichen Komponenten installiert und eine IIS-Website für den Paketimport vorbereitet wird.

Erstellen eines Webbereitstellungspakets

Die erste Aufgabe besteht darin, ein Webbereitstellungspaket für das Webanwendungsprojekt zu erstellen, das Sie bereitstellen möchten. Sie können Webpakete auf verschiedene Arten erstellen.

Ansatz 1: Erstellen eines Pakets im Rahmen des Buildprozesses mit Visual Studio

Sie können Ihr Webanwendungsprojekt so konfigurieren, dass nach jedem Build über die Registerkarte Paket/Web veröffentlichen auf den Projekteigenschaftenseiten ein Webbereitstellungspaket erstellt wird. Dieser Prozess wird unter Erstellen und Verpacken von Webanwendungsprojekten beschrieben.

Ansatz 2: Erstellen eines Pakets als Teil des Buildprozesses mit MSBuild

Wenn Sie Ihr Webanwendungsprojekt direkt mithilfe von MSBuild erstellen, entweder über eine benutzerdefinierte MSBuild-Projektdatei oder über die Befehlszeile, können Sie ein Webbereitstellungspaket als Teil des Buildprozesses erstellen, indem Sie die Eigenschaften DeployOnBuild=true und DeployTarget=Package in Ihren Befehl einschließen. Dieser Prozess wird unter Grundlegendes zum Buildprozess beschrieben.

Ansatz 3: Erstellen eines Pakets bei Bedarf in Visual Studio

Sie können in Visual Studio 2010 jederzeit ein Webbereitstellungspaket für ein Webanwendungsprojekt erstellen. Klicken Sie hierzu im fenster Projektmappen-Explorer mit der rechten Maustaste auf Ihr Webanwendungsprojekt, und klicken Sie dann auf Bereitstellungspaket erstellen.

Um ein Webbereitstellungspaket für ein Webanwendungsprojekt zu erstellen, klicken Sie im Projektmappen-Explorer Fenster mit der rechten Maustaste auf Ihr Webanwendungsprojekt, und klicken Sie dann auf Bereitstellungspaket erstellen.

Ansatz 4: Erstellen eines Pakets bei Bedarf über die Befehlszeile

Sie können ein Webbereitstellungspaket über die Befehlszeile erstellen, indem Sie das Paketziel für Ihr Webanwendungsprojekt mithilfe von MSBuild aufrufen. Der Befehl sollte wie folgt aussehen:

MSBuild.exe [Path to your project].[csproj/vbproj] /T:Package

Unabhängig davon, welchen Ansatz Sie verwenden, ist das Endergebnis identisch. Das WPP erstellt ein Webbereitstellungspaket als ZIP-Datei zusammen mit verschiedenen unterstützenden Ressourcen im Ausgabeordner ihres Webanwendungsprojekts.

W P P erstellt ein Webbereitstellungspaket als ZIP-Datei zusammen mit verschiedenen unterstützenden Ressourcen im Ausgabeordner für Ihr Webanwendungsprojekt.

Wenn Sie planen, das Webpaket manuell zu importieren, benötigen Sie nur die ZIP-Datei. Kopieren Sie diese Datei auf Ihren Zielwebserver, und Sie können mit dem Importvorgang beginnen.

Importieren eines Webpakets in IIS

Sie können das nächste Verfahren verwenden, um ein Webbereitstellungspaket aus dem lokalen Dateisystem in eine IIS-Website zu importieren. Bevor Sie dieses Verfahren ausführen, stellen Sie sicher, dass Sie über Folgendes verfügen:

  • Das Webbereitstellungspaket wurde auf den Webserver kopiert.
  • Konfiguriert einen IIS-Webserver zum Hosten Ihrer Anwendung.

Weitere Informationen zum Konfigurieren eines IIS-Webservers zur Unterstützung von Webbereitstellungspaketen finden Sie unter Konfigurieren eines Webservers für die Webbereitstellung (Offlinebereitstellung).

So importieren Sie ein Webbereitstellungspaket mithilfe des IIS-Managers

  1. Klicken Sie im IIS-Manager im Bereich Verbindungen mit der rechten Maustaste auf Ihre IIS-Website, zeigen Sie auf Bereitstellen, und klicken Sie dann auf Anwendung importieren.

    Klicken Sie im I I S-Manager im Bereich Verbindungen mit der rechten Maustaste auf Ihre IIS-Website, zeigen Sie auf Bereitstellen, und klicken Sie dann auf Anwendung importieren.

  2. Navigieren Sie im Assistenten zum Importieren von Anwendungspaketen auf der Seite Paket auswählen zum Speicherort Ihres Webbereitstellungspakets, und klicken Sie dann auf Weiter.

  3. Deaktivieren Sie auf der Seite Inhalt des Pakets auswählen alle Inhalte, die Sie nicht benötigen, und klicken Sie dann auf Weiter.

    Deaktivieren Sie auf der Seite Inhalt des Pakets auswählen alle Inhalte, die Sie nicht benötigen, und klicken Sie dann auf Weiter.

    Hinweis

    In vielen Fällen möchten Sie möglicherweise nicht alles importieren, was mit einem Webbereitstellungspaket enthalten ist. Beispielsweise sollten Sie nicht zulassen, dass Web Deploy die zugeordnete Datenbank ersetzt.
    Die Berechtigungseinträge erteilen legen Berechtigungen für das Zieldateisystem fest, um sicherzustellen, dass die Anwendungspoolidentität auf den physischen Ordner zugreifen kann, in dem die Websiteinhalte gespeichert werden. Darüber hinaus wird dem Benutzer der anonymen Authentifizierung die Leseberechtigung für den Ordner erteilt, damit die Anwendung Mime-Dateien (Multipurpose Internet Mail Extensions) bereitstellen kann. Wenn Sie möchten, können Sie diese Einträge entfernen und Berechtigungen manuell konfigurieren.

  4. Geben Sie auf der Seite Anwendungspaketinformationen eingeben die angeforderten Informationen an.

    Geben Sie auf der Seite Anwendungspaketinformationen eingeben die angeforderten Informationen an.

  5. Wenn Sie ein Webpaket erstellen, analysiert das WPP die Konfigurationsdatei für Ihre Anwendung und erkennt alle Variablen, z. B. Verbindungszeichenfolgen und Dienstendpunkte. In diesem Fall:

    1. Anwendungspfad ist der IIS-Pfad, in dem Sie Ihre Anwendung installieren möchten. Diese Einstellung gilt für alle Bereitstellungspakete, die vom WPP erstellt werden.

    2. ContactService-Dienstendpunktadresse ist die Adresse, die die Anwendung für die Kommunikation mit dem bereitgestellten WCF-Dienst verwenden sollte. Diese Einstellung entspricht einem Eintrag in der web.config-Datei .

    3. Die erste Verbindungszeichenfolgeneinstellung ist die Verbindungszeichenfolge, die Web Deploy verwenden sollte, um die der Anwendung zugeordnete Datenbank bereitzustellen (in diesem Fall eine ASP.NET Mitgliedschaftsdatenbank). Diese Einstellung entspricht der Einstellung auf der Registerkarte SQL-Paket/Veröffentlichen in Visual Studio.

    4. Die zweite Verbindungszeichenfolgeneinstellung ist die Verbindungszeichenfolge, die Ihre Anwendung tatsächlich verwendet, um mit der Datenbank zu kommunizieren, wenn sie ausgeführt wird. Dies entspricht einem Verbindungszeichenfolgeneintrag in der web.config-Datei .

      Hinweis

      Weitere Informationen dazu, wo diese Parameter herkommen, finden Sie unter Konfigurieren von Parametern für die Webpaketbereitstellung.

  6. Klicken Sie auf Weiter.

  7. Wenn Sie die Anwendung nicht zum ersten Mal auf dieser Website bereitgestellt haben, werden Sie aufgefordert, anzugeben, ob Sie alle vorhandenen Inhalte vor der Installation löschen möchten. Wählen Sie die Für Ihre Anforderungen geeignete Option aus, und klicken Sie dann auf Weiter.

    Wählen Sie die Für Ihre Anforderungen geeignete Option aus, und klicken Sie dann auf Weiter.

  8. Wenn IIS die Installation des Pakets abgeschlossen hat, klicken Sie auf Fertig stellen.

    Wenn I I S die Installation des Pakets abgeschlossen hat, klicken Sie auf Fertig stellen.

An diesem Punkt haben Sie Ihre Webanwendung erfolgreich in IIS veröffentlicht.

Zusammenfassung

In diesem Thema wird beschrieben, wie Sie mithilfe des IIS-Managers ein Webbereitstellungspaket in eine IIS-Website importieren. Dieser Ansatz für die Veröffentlichung von Webanwendungen ist geeignet, wenn Sicherheits- oder Infrastruktureinschränkungen die Remotebereitstellung unmöglich oder unerwünscht machen.

Weitere Informationen

Eine Anleitung zum Konfigurieren eines IIS-Webservers zur Unterstützung des manuellen Importierens eines Webpakets finden Sie unter Konfigurieren eines Webservers für die Webbereitstellung (Offlinebereitstellung). Allgemeine Anleitungen zum Bereitstellen von Webpaketen finden Sie unter Exemplarische Vorgehensweise: Bereitstellen eines Webanwendungsprojekts mithilfe eines Webbereitstellungspakets (Teil 1 von 4).