Freigeben über


Veröffentlichen von Websites

Aktualisiert: November 2007

Mit Visual Web Developer können Sie Websites veröffentlichen. Dabei wird die Website kompiliert, und die Ausgabe wird an einen von Ihnen angegebenen Speicherort kopiert, z. B. einen Produktionsserver. Beim Veröffentlichen werden folgende Schritte ausgeführt:

  • Vorkompilieren der Seiten, des Quellcodes im Ordner App_Code usw. in ausführbare Dateien.

  • Schreiben der ausführbaren Dateien in einen Zielordner.

Hinweis:

Das Dienstprogramm Website veröffentlichen ist in Visual Web Developer Express Edition nicht verfügbar.

Das Veröffentlichen einer Website bietet gegenüber dem einfachen Kopieren der Website auf einen Zielwebserver folgende Vorteile:

  • Beim Vorkompilierungsprozess werden sämtliche Kompilierungsfehler sowie Fehler in der Konfigurationsdatei gefunden.

  • Die Antwortgeschwindigkeit für die einzelnen Seiten beim erstmaligen Anfordern ist höher, da die Seiten bereits kompiliert wurden. Wenn Sie die Seiten auf eine Site kopieren, ohne sie vorher zu kompilieren, werden die Seiten beim erstmaligen Anfordern kompiliert, und die kompilierte Ausgabe wird im Cache zwischengespeichert.

  • Mit Bereitstellung der Site wird kein Programmcode bereitgestellt, sodass ein gewisses Maß an Sicherheit gewonnen wird. Sie können die Site mit Markupschutz veröffentlichen, wobei ASPX-Dateien kompiliert werden, oder ohne Markupschutz, wobei ASPX-Dateien unverändert zur Site kopiert werden, sodass Sie das Layout nach der Bereitstellung noch ändern können.

    Hinweis:

    Wenn Sie eine Anwendung veröffentlichen, die einen Verweis auf eine im GAC registrierte benutzerdefinierte Komponente enthält, wird die Komponente nicht mit der Anwendung veröffentlicht. Weitere Informationen finden Sie unter Gewusst wie: Hinzufügen eines Verweises auf .NET- oder COM-Komponenten in einer Website.

Weitere Informationen hierzu finden Sie unter Übersicht über die ASP.NET-Vorkompilierung.

Vorkompilierung

Der erste Schritt beim Veröffentlichen besteht im Vorkompilieren der Website. Die Vorkompilierung zur Veröffentlichung unterscheidet sich von der Vorkompilierung an Ort und Stelle (die in Visual Web Developer als Erstellen bezeichnet wird). Der bei der Vorkompilierung durchgeführte Kompilierungsprozess entspricht im Wesentlichen dem Prozess, der durchgeführt wird, wenn eine Seite aufgrund einer Browseranforderung dynamisch kompiliert wird. Der Precompiler erzeugt Assemblys von den Seiten, die sowohl das Markup als auch den Code enthalten. Des Weiteren werden die in den Ordnern App_Code, App_GlobalResources, App_LocalResources und App_Themes enthaltenen Dateien kompiliert.

Sie können sowohl ASP.NET-Seiten, die aus einer einzigen Datei bestehen, als auch Code-Behind-Seiten kompilieren. Weitere Informationen zu diesen beiden Modellen finden Sie unter Codemodell für ASP.NET-Webseiten.

Auswählen zwischen Vorkompilieren und Erstellen

Der Vorkompilierungsschritt beim Veröffentlichen unterscheidet sich von der Kompilierung, die durchgeführt wird, wenn Sie eine Website zu Testzwecken erstellen. Beim Erstellen wird die Site oder die aktuelle Seite mitsamt allen abhängigen Dateien kompiliert und anschließend ausgeführt. Der Buildprozess ist eine Form des Testens. Dabei wird jedoch keine keine Ausgabe erzeugt, die Sie bereitstellen können. Im Gegensatz dazu wird bei der Vorkompilierung während der Veröffentlichung eine Ausgabe generiert, die in einem von Ihnen angegebenen Ordner gespeichert wird und auf einem Produktionsserver bereitgestellt werden kann.

Schreiben der bei der Vorkompilierung entstehenden Ausgabe

Nachdem der Vorkompilierungsprozess abgeschlossen ist, wird die erzeugte Ausgabe in einen von Ihnen angegebenen Ordner geschrieben. Sie können die Ausgabe in jeden beliebigen Ordner im Dateisystem schreiben, auf den Sie Zugriff haben, indem Sie FTP (File Transfer Protocol) oder HTTP verwenden. Sie müssen dabei über die entsprechenden Berechtigungen zum Schreiben auf die Zielsite verfügen.

Hinweis:

Der Veröffentlichungsprozess stellt nur die Dateien bereit, die in den Websiteordnern und deren Unterordnern enthalten sind. Die Datei Machine.config wird nicht bereitgestellt. Unter Umständen unterscheidet sich also die Konfiguration des Zielwebservers von der Konfiguration Ihres Computers, was sich möglicherweise auf das Verhalten der Anwendung auswirkt.

Sie können einen Zielordner auf einem Stagingserver oder einem Produktionsserver angeben. Sie können die Ausgabe auch in einen Ordner auf dem lokalen Computer schreiben. Wenn Sie einen Order auf einem Produktionsserver angeben, können Sie Veröffentlichung und Bereitstellung in einem Schritt durchführen. Wenn Sie zum Schreiben einen Ordner auswählen, der nicht zu einer Website gehört, können Sie die Ausgabe in einem separaten Schritt auf den Server kopieren.

Hinweis:

Wenn Sie eine vorkompilierte Website mit Visual Studio öffnen, können Sie die Website nicht erstellen. Die Buildoptionen sind deaktiviert. Es wird empfohlen, die Dateien in der ursprünglichen Website zu bearbeiten, die Website vorzukompilieren und sie erneut zu veröffentlichen.

Die beim Kompilierungsprozess entstehende Ausgabe umfasst die kompilierten Assemblys für sämtlichen Code und für alle Seiten. Wenn Sie per Option festlegen, dass die vorkompilierte Site aktualisiert werden kann, werden sämtliche Code-Behind-Klassen für die ASPX-Dateien, ASMX-Dateien und ASHX-Dateien zu Assemblys kompiliert. Die ASPX-Dateien, ASMX-Dateien und ASHX-Dateien selbst werden jedoch unverändert in den Zielordner kopiert, sodass Sie nach der Bereitstellung der Site weiterhin Änderungen am Layout vornehmen können. Bei vorkompilierten Sites, die aktualisiert werden können, wird der in Einzeldateiseiten enthaltene Code nicht zu einer Assembly kompiliert, sondern stattdessen als Quellcode bereitgestellt.

Statische Dateien werden nicht kompiliert. Stattdessen werden sie unverändert in den Ausgabeordner kopiert. Die statischen Dateien umfassen Grafiken, HTM-Dateien und HTML-Dateien, Textdateien und Ähnliches.

Während der Vorkompilierung eventuell auftretende Fehler werden im Ausgabefenster und im Fenster Fehlerliste angezeigt. Wenn während der Vorkompilierung ein Fehler auftritt, kann die Site nicht vollständig kompiliert werden und wird nicht veröffentlicht.

Siehe auch

Aufgaben

Exemplarische Vorgehensweise: Veröffentlichen einer Website

Konzepte

Kopieren von Websites mit dem Tool Website kopieren