Ich frage mich, was die beste Vorgehensweise zum Verschieben einer Website auf einen anderen Server ist (zusammen mit allen Einstellungen usw.).
- Erstellen Sie die Site manuell auf dem neuen Server neu (aus offensichtlichen Gründen nicht wartbar).
- Kopieren Sie die Einstellungsdatei applicationHost.config
- Verwenden Sie appcmd, um eine Sicherung und Wiederherstellung durchzuführen
- Verwenden Sie MSDeploy, um die Site auf dem neuen Computer zu veröffentlichen
- Verwenden Sie ein Tool eines Drittanbieters
Ich frage mich nur, welche Erfahrungen andere gemacht haben.
deployment
iis-7
migrate
Kalid
quelle
quelle
Antworten:
Ich würde sagen, exportieren Sie Ihre Serverkonfiguration im IIS-Manager:
Verschieben Sie diese Dateien auf Ihren neuen Server
Kehren Sie auf dem neuen Server zum Abschnitt "Freigegebene Konfiguration" zurück und aktivieren Sie "Freigegebene Konfiguration aktivieren". Geben Sie den Speicherort im physischen Pfad zu diesen Dateien ein und wenden Sie sie an.
BAM! Geh ein Bier trinken!
quelle
MSDeploy kann alle Inhalte, Konfigurationen usw. migrieren, die vom IIS-Team empfohlen werden. http://www.iis.net/extensions/WebDeploymentTool
Führen Sie den folgenden Befehl aus, um ein Paket zu erstellen (ersetzen Sie die Standardwebsite durch Ihren Website-Namen):
Führen Sie den folgenden Befehl aus, um das Paket wiederherzustellen:
quelle
Hier ist eine hilfreiche Website zur Verwendung von appcmd zum Exportieren / Importieren einer Site-Konfiguration. http://www.microsoftpro.nl/2011/01/27/exporting-and-importing-sites-and-app-pools-from-iis-7-and-7-5/
quelle
Microsoft Web Deploy v3 kann alle Ihre Dateien, Konfigurationseinstellungen usw. exportieren und importieren. Es speichert alles in einem Zip-Archiv, das zum Import auf den neuen Server bereit ist. Es kann sogar auf neuere Versionen von IIS (v7-v8) aktualisiert werden.
http://www.iis.net/extensions/WebDeploymentTool
Nach der Installation des Tools: Klicken Sie mit der rechten Maustaste auf Ihren Server oder Ihre Website in der IIS-Verwaltungskonsole, wählen Sie "Bereitstellen", "Anwendung exportieren ..." und führen Sie den Export aus.
Importieren Sie auf dem neuen Server das exportierte Zip-Archiv auf die gleiche Weise.
quelle
Verwenden Sie appcmd, um eine oder alle Sites zu exportieren, und importieren Sie sie erneut auf den neuen Server. Dies kann iis7.0 oder 7.5 sein. Wenn Sie mit appcmd exportieren, werden die Kennwörter entschlüsselt, erneut importiert und erneut verschlüsselt.
quelle
Ich kann den Thread wegen fehlender Wiederholung nicht kommentieren. Ein anderer Kommentator gab an, dass sie nicht von einer niedrigeren Version auf eine höhere Version von IIS migrieren konnten. Dies gilt, wenn Sie einige Dateien nicht zusammenführen. Wenn Sie dies jedoch tun, können Sie dies tun, da ich gerade meine IIS 7.5-Site mit der von chews veröffentlichten Antwort auf IIS 8.0 migriert habe.
Beim Erstellen des Exports (II7.5) gibt es zwei Schlüsseldateien (Administration.config und ApplicationHost.config), die Verweise auf Ressourcen auf dem IIS7.5-Server enthalten. Beispielsweise wird eine DLL mit einem öffentlichen Schlüssel und einer für 7.5 spezifischen Version referenziert. Diese sind auf dem IIS8-Server NICHT identisch. Die Funktionskonfiguration kann ebenfalls unterschiedlich sein (ich habe sichergestellt, dass meine identisch sind). Es gibt einige neue Funktionen in 8, die in 7.5 niemals existieren werden.
Wenn Sie mutig genug sind, die beiden Dateien zusammenzuführen, funktioniert es. Ich musste IIS einmal deinstallieren, weil ich es vermasselt habe, aber beim zweiten Mal.
Ich habe ein Merge-Tool (Beyond Compare) verwendet und ohne etwas Äquivalentes wäre es eine riesige PITA - aber mit einem guten Diff-Tool (fünf Minuten) war es ziemlich einfach.
Um die Zusammenführung durchzuführen, müssen die 8.0-Dateien von den exportierten 7.5-Dateien unterschieden werden, bevor ein Import versucht wird. Zum größten Teil müssen die 8.0-Dateien die serverspezifischen Inhalte in den exportierten 7.5-Dateien überschreiben, während die Site- / App-Pool-spezifischen Inhalte verbleiben.
Ich fand, dass administrative.config fast identisch war, ohne die Versionsinformationen vieler Einträge. Dieser war einfach.
Die applicationHost.config weist viel mehr Unterschiede auf. Einige Einträge sind unterschiedlich angeordnet, ansonsten jedoch identisch. Sie müssen also jeden Unterschied herausgreifen und herausfinden.
Ich habe meine 7.5-Exportdateien vor dem Zusammenführen im Ordner System32 \ inetsrv \ config \ Export abgelegt.
Ich habe den FROM-Ordner System32 \ inetsrv \ config mit dem Ordner System32 \ inetsrv \ config \ Export für beide oben genannten Dateien zusammengeführt. Ich habe alles in den FROM-Dateien außer ortsspezifischen Tags / Elementen (z. B. applicationPools, customMetadata, Sites, Authentifizierung) verschoben. Besonders hervorzuheben ist, dass ich auch viele standortspezifische "Standort" -Tagblöcke behalten musste, aber der neue Server hatte einen eigenen "Standort" -Tagblock mit serverspezifischen Standardeinstellungen, die beibehalten werden müssen.
Beachten Sie schließlich, dass diese zwischengespeicherten Kennwörter bei Verwendung von Dienstkonten Junk-Kennwörter sind und für Ihre App-Pools erneut eingegeben werden müssen. Keine meiner Websites funktionierte anfangs, aber alles, was erforderlich war, war die erneute Eingabe der Kennwörter für alle meine App-Pools, und ich war betriebsbereit.
Wenn jemand, der einen Kommentar abgeben kann, diesen Beitrag erwähnt, hilft er wahrscheinlich jemand anderem wie mir, der viele Sites auf einem Server mit komplizierten Konfigurationen hat.
Grüße,
Stuart
quelle
In meinem Fall wurden die Dateien bereits kopiert. Ich habe den einfachsten Weg gefunden, die Schritte in diesem Handbuch zu befolgen: https://www.ryadel.com/de/exporting-importing-app-pools-and-websites-configuration-between -multiple-iis-instance /
Ich exportierte AppPools / Websites, kopierte die XML-Dateien auf den Zielserver und importierte AppPools und dann Websites. Hat sehr gut funktioniert. Dies ist auch eine hervorragende Option für diese Frage.
quelle