Glengamoi (Forum) · AspHeute · .NET Heute (RSS-Suche) · AspxFiles (Wiki) · .NET Blogs

Den Webserver umsiedeln (IIS 4 oder 5)

Geschrieben von: Herbert Hahn
Kategorie: Server

This printed page brought to you by AlphaSierraPapa

Dieser Artikel beschäftigt sich mit dem Problem, das man hat, wenn man daran denkt einen Webserver mit mehreren konfigurierten Websites auf eine andere (neue) Servermaschine umzusiedeln. Ohne Handarbeit geht es nämlich mit den mitgelieferten Bordmitteln nicht. Wenn dann noch dazukommt daß sich der Pfad zur Site ändert, hat man natürlich gleich eine Menge an zusätzlich möglichen Fehlerquellen. Praktisch wäre es also, wenn man die ganze Konfiguration einfach kopieren könnte.

Praktischerweise gibt es ein Tool, das den Ansprüchen gerecht werden kann: IIS Export v3.0 von Adsonline. Dieses Tool ist ShareWare, kann also kostenlos getestet werden ob es entspricht. Die Registrierung zahlt sich auf alle Fälle aus wenn man mehrere Websites kopieren will.

Das Programm im Überblick

Nach dem Herunterladen von IIS Export einfach das Installationsprogramm aufrufen. Der Rechner auf dem installiert wird muß nicht unbedingt der Webserver sein. Des weiteren gilt - und wird auch während der Installation angemerkt - daß man die Metabase des Webservers sichern sollte. Dazu empfehle ich MetaEdit.

Nach dieser obligatorischen Sicherung geht es ans Werk. Hinweis: In der ShareWare Version können Sie jeweils nur eine Website umkopieren. Das Umkopieren kann auf zwei Wegen geschehen. Der erste führt über die lokale Datenbank des IIS Export Tools. Hier werden alle Informationen in einer lokalen Datenbank zwischengespeichert. Das hat jedoch den Nachteil daß nur die Konfiguration und nicht die Dateien umkopiert werden. Praktisch für das Duplizieren von Websitekonfigurationen, minder praktisch für das Migrieren von einem Server auf einen neuen.

Der zweite Weg ist daß die Website direkt umkopiert wird. Wenn man direkt kopiert, dann hat man zur Auswahl ob man die Dateien und auch die Dateiberechtigungen (Permissions) mitkopieren möchte. Dabei ist zu beachten, daß man beim IIS Server links oben nicht localhost angibt, sondern die IP Adresse (oder den Namen) des Servers.

Der Grund dafür ist, daß das Programm über Shares auf die Dateien des Webs zugreift. Der Pfad \\localhost\D$\www funktioniert einfach nicht, außer wenn der Rechnername zufälligerweise localhost heißt (eher auszuschließen). Klarerweise muß man die administrativen Freigaben aktiviert haben (C$, D$, E$ usw.). Als Anmerkung sei noch gesagt, daß das Thema Sicherheit in diesem Zusammenhang eine wichtige Rolle spielt. Sollten Sie nämlich auf die Idee kommen und die Dateien mit Berechtigungen von einer Domäne in eine andere Domäne kopieren, müssen Sie vorher auch die einzelnen User umkopieren.

Die zweite Einstellung in Sachen Berechtigungen kopieren ist für die Sicherheit sehr relevant. Wenn man die Auswahl Fast File Permission setzt, dann werden die Dateiberechtigungen der übergeordneten Ordner mitübernommen. Wenn man innerhalb einer Website Dateien oder Verzeichnisse mittels Berechtigungen geschützt hat bekommt dann plötzlich unter Umständen wieder jeder Leseberechtigung.

Auch ist wichtig die Servervarianten (IIS 4 oder 5) richtig einzustellen. Wenn Sie von IIS 4 auf IIS 5 migrieren sollten sie beide Server als IIS 5 angeben, da der IIS 5 um einen Anwendungssschutz mehr hat (niedrige, mittlere und hohe Isolation). Mit dieser Einstellung haben Sie den besten Erfolg, da sonst die Anwendungsschutzeinstellungen nicht korrekt transferiert werden. Für den Fall daß am Zielserver diese Website bereits existiert, kann man angeben ob ein Web neu angelegt wird oder ob das existierende Web überschrieben werden soll. Weiters hat man nun noch die Möglichkeit bestimmte Dinge während des Kopierens zu ändern.

  1. Der Speicherort: Das Web kann sich am Zielserver in einem anderen Ordner befinden.
  2. Die IP Adresse: Wenn in der Konfiguration die IP Adressen explizit eingetragen sind. Weiters lassen sich hier die Hostheader auch ändern - das ist ein echtes Highlight, da man so eine komplette Kopie bekommen kann.
  3. Die SSL IP Adresse (Hinweis: die SSL Unterstützung ist nur in der gekauften Version vorhanden)
  4. Find & Replace: Dies ist der interessanteste Punkt. Das Ersetzen von Textteilen im Web. Man denke da an Pfadangaben im Sourcecode des Webs: diese können ganz einfach ersetzt werden. Aber Achtung: die Angaben, die man hier macht, gelten für alle Sites die man kopiert!

Wenn wir diese Einstellungen gemacht haben, dann geht es ans kopieren. Ist das Web nicht allzu groß, dann ist innerhalb von wenigen Sekunden das gesamte Web umgezogen.

Je nach dem wie man diesen Umzug geplant hat, kann man nun sofort testen ob es funktioniert hat. Sollen der Quell- und der Zielserver erhalten bleiben, so muß man natürlich die entsprechenden Änderungen im zuständigen DNS-Server vornehmen. Andernfalls muß man sowieso vorher beziehungsweise nachher die IP-Adressen der Server ändern. Ein weiterer wichtiger Punkt ist der, daß man nun das neue Web auf dem neuen Server noch starten muß.

IIS Export als Backuptool

Dieses Tool läßt sich auch hervorragend als Backuptool verwenden. Man kann dieses Tool mit der Option /runbackup und /d und Jobnamen (den Job kann man generieren und unter einem Namen abspeichern) aufrufen. Damit hat man die Möglichkeit den IIS zu sichern.

Mittels AT Job zum Beispiel:

AT \\webserver 00:00 /every:F c:\progra~1\Adsonl~1\IISExp~1\IISExport.exe RUNBACKUP

Damit startet das Programm im Backupmodus und den Default Backup Job "backup.job" starten.

Was man mit diesem Tool nicht kann

  1. ActiveX Komponenten müssen von Hand kopiert / installiert werden.
  2. Anwendungseinstellungen werden nicht mitkopiert. Es sind die nicht mitkopierten Werte, die maschinenbezogen sind, extra unter Properties to Exclude angeführt. Das sollte man vielleicht vorher schon bedenken. Wie etwa die Debugeinstellungen, Isolation der Anwendung usw.
  3. Einstellungen für Frontpage Extentions werden nicht exportiert. Daher auch kein Zugriff mit Frontpage solange Sie diese nicht manuell konfigurieren.
  4. Die Einstellungen der Verzeichnissicherheit (bei ausgeschaltetem anonymen Zugriff) könnten nicht funktionieren weil die Standardberechtigungen für den Webserver nicht reichen. Sie müssen dazu bei Standardauthentifizierung (Basic Authentication) die Standarddomäne richtig angeben aus der die User kommen. Dazu siehe MS knowledge base article Q168908 and Q184319. Ebenso kann das beim Ftp-Server passieren (User hat keinen Zugriff mehr) und hat die gleiche Ursache.
  5. Die Einstellungen im FTP-Server, vor allem die IP-Restrictions Einstellungen, können nicht exportiert werden.

Schlußbemerkung

Was das eigentlich geniale an diesem Tool ist, ist die Tatsache daß man bei bestehenden Webservern die sich nicht ändern sollen, einfach ein Web auf einen anderen Server, sozusagen mittels ein paar Handgriffen, verschieben kann.

Das Tool ist nicht kostenlos, aber wenn bedenkt wie viel Arbeit man sich erspart und wie viele Fehler man vermeiden kann, dann ist der Kaufpreis nicht der Rede wert.

This printed page brought to you by AlphaSierraPapa

Verwandte Artikel

Eine IP Adresse für mehrere Websites
http:/www.aspheute.com/artikel/20000801.htm
Script-basierte IIS Administration
http:/www.aspheute.com/artikel/20010504.htm
Siteüberwachung mit Scheduled Tasks
http:/www.aspheute.com/artikel/20010419.htm
Virtuelle Verzeichnisse umbenennen
http:/www.aspheute.com/artikel/20030911.htm

Links zu anderen Sites

IIS Export
http://www.adsonline.co.uk/iisexport
MetaEdit
http://support.microsoft.com/default.aspx?scid=kb;EN-US;q232068
Q168908: How to Authenticate a User Against All Trusting Domains
http://support.microsoft.com/default.aspx?scid=kb;EN-US;q168908
Q184319: FTP Service's DefaultLogonDomain Not Available in MMC
http://support.microsoft.com/default.aspx?scid=kb;EN-US;q184319

 

©2000-2006 AspHeute.com
Alle Rechte vorbehalten. Der Inhalt dieser Seiten ist urheberrechtlich geschützt.
Eine Übernahme von Texten (auch nur auszugsweise) oder Graphiken bedarf unserer schriftlichen Zustimmung.