Professionelle WordPress-Websites in Azure

Azure App Service bietet eine skalierbare, sichere und benutzerfreundliche Umgebung für große unternehmenswichtige WordPress-Websites. Microsoft selbst betreibt leistungsstarke Websites wie die Office- und Bing-Blogs. In diesem Artikel wird erläutert, wie Sie das Web-Apps-Feature von Microsoft Azure App Service verwenden, um eine leistungsfähige, cloudbasierte WordPress-Website einzurichten und zu verwalten, die eine hohe Anzahl von Besuchern bewältigen kann.

Architektur und Planung

Für eine grundlegende WordPress-Installation gelten nur zwei Anforderungen:

  • MySQL-Datenbank: erhältlich über ClearDB im Azure Marketplace. Alternativ dazu können Sie auch in Azure Virtual Machines eine eigene MySQL-Installation unter Windows oder Linux verwalten.

    Hinweis

    ClearDB stellt verschiedene MySQL-Konfigurationen bereit. Jede Konfiguration weist unterschiedliche Leistungsmerkmale auf. Im Azure Store finden Sie Informationen zu Angeboten, die entweder über den Azure Store oder direkt wie auf der ClearDB-Website gezeigt bereitgestellt werden.

  • PHP 5.2.4 oder höher: Azure App Service stellt derzeit die PHP-Versionen 5.4, 5.5 und 5.6 bereit.

    Hinweis

    Wir empfehlen, stets mit der neuesten Version von PHP zu arbeiten, um sicherzustellen, dass Sie über die neuesten Sicherheitskorrekturen verfügen.

Grundlegende Bereitstellung

Wenn Sie nur die grundlegenden Anforderungen benötigen, können Sie eine Standardlösung innerhalb einer Azure-Region erstellen.

Eine Azure-Web-App und MySQL-Datenbank, gehostet in einer einzelnen Azure-Region

Sie können zwar mehrere Web-Apps-Instanzen der Website erstellen, um Ihre Anwendung horizontal hochzuskalieren. Dennoch wird die gesamte Konfiguration in den Rechenzentren einer bestimmten geografischen Region gehostet. Besucher, die sich außerhalb dieser Region befinden, bemerken möglicherweise lange Antwortzeiten bei Verwendung der Website. Wenn die Rechenzentren in dieser Region ausfallen, ist auch Ihre Anwendung nicht mehr verfügbar.

Bereitstellung in mehreren Regionen

Durch Verwendung von Azure Traffic Manager können Sie Ihre WordPress-Website auf mehrere geografische Regionen skalieren und dennoch allen Besuchern die gleiche URL bereitstellen. Alle Besucher durchlaufen Traffic Manager und werden anschließend basierend auf der Lastenausgleichskonfiguration an eine Region weitergeleitet.

Eine in mehreren Regionen gehostete Azure-Web-App mit CDBR-Hochverfügbarkeitsrouter zum regionsübergreifenden Weiterleiten an MySQL

Innerhalb jeder Region kann die WordPress-Website weiterhin über mehrere Web-Apps-Instanzen skaliert werden, diese Skalierung ist jedoch regionsspezifisch. Regionen mit hohem und niedrigem Datenverkehrsaufkommen können unterschiedlich skaliert werden.

Um Datenverkehr an mehrere MySQL-Datenbanken zu replizieren und weiterzuleiten, können Sie ClearDB-Hochverfügbarkeitsrouter (CDBRs) (links) oder MySQL Cluster Carrier Grade Edition (CGE) verwenden.

Bereitstellung in mehreren Regionen mit Medienspeicherung und Zwischenspeichern

Wenn die Website Uploads zulässt oder Mediendateien hostet, verwenden Sie Azure Blob Storage. Wenn Sie einen Cache benötigen, ziehen Sie Redis Cache, Memcache Cloud, MemCachier oder eines der anderen Cacheangebote im Azure Store in Betracht.

Eine in mehreren Regionen gehostete Azure-Web-App mit CDBR-Hochverfügbarkeitsrouter für MySQL, Managed Cache, Blob Storage und Content Delivery Network

Blobspeicher wird standardmäßig geografisch auf mehrere Regionen verteilt, sodass Sie sich um die Replikation von Dateien auf allen Websites keine Gedanken machen müssen. Sie können auch das Azure Content Delivery Network (CDN) für Blob Storage aktivieren, das Dateien an Endknoten verteilt, die näher bei Ihren Besuchern sind.

Planung

Weitere Anforderungen

Maßnahme Option
Hochladen oder Speichern großer Dateien WordPress-Plug-In für die Verwendung von Blob Storage.
Senden von E-Mails SendGrid und das WordPress-Plug-In für die Verwendung von SendGrid.
Benutzerdefinierte Domänennamen Konfigurieren eines benutzerdefinierten Domänennamens in Azure App Service.
HTTPS Aktivieren von HTTPS für eine Web-App in Azure App Service.
Überprüfung vor Wechsel zur Produktionsumgebung Einrichten von Stagingumgebungen für Web-Apps in Azure App Service.

Beim Verschieben einer Web-App aus der Staging- in die Produktionsumgebung wird auch die WordPress-Konfiguration verschoben. Stellen Sie sicher, dass alle Einstellungen an die Anforderungen Ihrer Produktions-App angepasst werden, bevor Sie die Staging-App in die Produktion verschieben.

Überwachung und Problembehandlung Aktivieren der Diagnoseprotokollierung für Web-Apps in Azure App Service und Überwachen von Web-Apps in Azure App Service.
Bereitstellen Ihrer Website Bereitstellen von Web-Apps in Azure App Service.

Verfügbarkeit und Notfallwiederherstellung

Maßnahme Option
Vornehmen eines Lastenausgleichs für Websites oder Geografische Verteilung von Websites Weiterleiten von Datenverkehr mit Azure Traffic Manager.
Sichern und Wiederherstellen Sichern von Web-Apps in Azure App Service und Wiederherstellen einer Web-App in Azure App Service.

Leistung

Die Leistung in der Cloud wird primär durch Zwischenspeichern und horizontales Skalieren erzielt. Es sollten aber der Arbeitsspeicher, die Bandbreite sowie weitere Attribute beim Web-Apps-Hosting berücksichtigt werden.

Maßnahme Option
Grundlagen von App Service-Instanzfunktionen Preisübersicht, einschließlich der Funktionen von App Service-Stufen.
Cacheressourcen Redis Cache, Memcache Cloud, MemCachier oder eines der anderen Cacheangebote im Azure Store.
Skalieren Ihrer Anwendung Skalieren einer Web-App in Azure App Service und ClearDB-Hochverfügbarkeitsrouting. Wenn Sie sich für das Hosten und Verwalten Ihrer eigenen MySQL-Installation entscheiden, sollten Sie für die horizontale Skalierung MySQL Cluster CGE in Erwägung ziehen.

Migration

Es gibt zwei Möglichkeiten, eine vorhandene WordPress-Website zu Azure App Service zu migrieren:

  • WordPress-Export: Diese Methode exportiert die Inhalte Ihres Blogs. Anschließend können Sie die Inhalte mithilfe des WordPress Importer-Plug-Ins in eine neue WordPress-Website in Azure App Service importieren.

    Hinweis

    Mit diesem Prozess können Sie lediglich Ihre Inhalte migrieren, nicht jedoch Plug-Ins, Designs oder andere Anpassungen. Sie müssen diese Komponenten manuell erneut installieren.

  • Manuelle Migration: Sichern Sie Ihre Website und Datenbank, und stellen Sie diese dann manuell in einer Web-App in Azure App Service und der zugehörigen MySQL-Datenbank wieder her. Diese Methode eignet sich gut, um hochgradig angepasste Websites zu migrieren, da sie Ihnen die Mühe erspart, Plug-Ins, Themen und andere Anpassungen manuell zu installieren.

Schrittweise Anweisungen

Erstellen einer WordPress-Website

  1. Nutzen Sie den Azure Marketplace, um in der Region bzw. den Regionen, in der/denen Ihre Website gehostet wird, eine MySQL-Datenbank mit der im Abschnitt Architektur und Planung ermittelten Größe zu erstellen.
  2. Führen Sie die Schritte unter Erstellen einer WordPress-Web-App in Azure App Service aus, um eine neue WordPress-Web-App zu erstellen. Wählen Sie beim Erstellen der Web-App die Option Vorhandene MySQL-Datenbank verwenden und anschließend die in Schritt 1 erstellte Datenbank aus.

Wenn Sie eine vorhandene WordPress-Website migrieren, helfen Ihnen nach dem Erstellen einer neuen Web-App die Informationen unter Migrieren einer vorhandenen WordPress-Website in Azure weiter.

Migrieren einer vorhandenen WordPress-Website in Azure

Wie im Abschnitt Architektur und Planung erwähnt, gibt es zwei Möglichkeiten zum Migrieren einer WordPress-Website:

  • Export und Import für Websites ohne zahlreiche Anpassungen, deren Inhalt Sie lediglich verschieben möchten.
  • Sicherung und Wiederherstellung für Websites mit zahlreichen Anpassungen, bei denen Sie alles verschieben möchten.

Befolgen Sie die Anweisungen zum Migrieren Ihrer Website in den folgenden Abschnitten.

Die Export- und Importmethode

  1. Verwenden Sie den WordPress-Export zum Exportieren Ihrer vorhandenen Website.
  2. Erstellen Sie anhand der Schritte im Abschnitt Erstellen einer WordPress-Website eine Web-App.
  3. Melden Sie sich im Azure-Portal bei Ihrer WordPress-Website an, und klicken Sie dann auf Plug-Ins > Neu hinzufügen. Suchen Sie das Plug-In WordPress Importer, und installieren Sie es.
  4. Klicken Sie nach der Installation des WordPress Importer-Plug-Ins auf Extras > Importieren, und klicken Sie dann auf WordPress, um das WordPress-Importer-Plug-In zu verwenden.
  5. Klicken Sie auf der Seite WordPress importieren auf Datei wählen. Suchen Sie die aus Ihrer vorhandenen WordPress-Website exportierte WXR-Datei, und klicken Sie auf Datei hochladen und importieren.
  6. Klicken Sie auf Senden. Sie werden informiert, wenn der Import erfolgreich war.
  7. Nachdem Sie alle Schritte abgeschlossen haben, starten Sie Ihre Website über das Blatt App-Dienste im Azure-Portal neu.

Nach dem Importieren der Website müssen Sie ggf. die folgenden Schritte ausführen, um Einstellungen zu aktivieren, die nicht in der Importdatei enthalten sind.

Bei Verwendung von Maßnahme
Permalinks Klicken Sie auf dem WordPress-Dashboard der neuen Website auf Einstellungen > Permalinks, und aktualisieren Sie anschließend die Struktur der Permalinks.
Bild-/Medienlinks Um Links auf den neuen Speicherort zu aktualisieren, verwenden Sie das Plug-In Velvet Blues Update URLs – ein Tool zum Suchen und Ersetzen –, oder aktualisieren Sie die Links in der Datenbank manuell.
Designs Wechseln Sie zu Darstellung > Design, und aktualisieren Sie das Websitedesign den Anforderungen entsprechend.
Menüs Falls Ihr Design Menüs unterstützt, ist in Links zu Ihrer Homepage möglicherweise noch das alte Unterverzeichnis eingebettet. Wechseln Sie zu Darstellung > Menüs, und aktualisieren Sie diese.

Die Sicherungs- und Wiederherstellungsmethode

  1. Sichern Sie Ihre vorhandene WordPress-Website mithilfe der Informationen unter WordPress Backups.
  2. Sichern Sie Ihre vorhandene Datenbank anhand der Informationen unter Backing up your database (Sichern Ihrer Datenbank).
  3. Erstellen Sie eine Datenbank, und stellen Sie die Sicherung wieder her.

    1. Erwerben Sie eine neue Datenbank im Azure Marketplace, oder richten Sie auf einem virtuellen Windows- oder Linux-Computer eine MySQL-Datenbank ein.
    2. Stellen Sie mit einem MySQL-Client wie z.B. MySQL Workbench eine Verbindung mit der neuen Datenbank her, und importieren Sie Ihre WordPress-Datenbank.
    3. Ändern Sie in der Datenbank die Domäneneinträge entsprechend Ihrer neuen Azure App Service-Domäne, z.B.: mywordpress.azurewebsites.net. Verwenden Sie das Skript „Search and Replace for WordPress Databases“, um alle Instanzen sicher zu ändern.
  4. Erstellen Sie im Azure-Portal eine Web-App, und veröffentlichen Sie die WordPress-Sicherung.

    1. Um im Azure-Portal eine neue Web-App mit einer Datenbank zu erstellen, klicken Sie auf Neu > Web + Mobile > Azure Marketplace > Web-Apps > Web-App + SQL (oder Web-App + MySQL) > Erstellen. Konfigurieren Sie alle erforderlichen Einstellungen, um eine leere Web-App zu erstellen.
    2. Suchen Sie in Ihrer WordPress-Sicherung die Datei wp-config.php, und öffnen Sie sie in einem Editor. Ersetzen Sie die folgenden Einträge durch die Informationen für Ihre neue MySQL-Datenbank:

      • DB_NAME: Der Benutzername der Datenbank.
      • DB_USER: Der Benutzername für den Zugriff auf die Datenbank.
      • DB_PASSWORD: Das Kennwort des Benutzers.

        Nachdem Sie diese Einträge geändert haben, speichern und schließen Sie die Datei wp-config.php.

    3. Verwenden Sie die Informationen unter Bereitstellen einer Web-App in Azure App Service, um die gewünschte Bereitstellungsmethode zu aktivieren, und stellen Sie anschließend Ihre WordPress-Sicherung in Ihrer Web-App in Azure App Service bereit.
  5. Nach der Bereitstellung der WordPress-Website sollten Sie über die URL „*.azurewebsite.net“ auf die neue Website (als App Service-Web-App) zugreifen können.

Konfigurieren Ihrer Website

Befolgen Sie nach dem Erstellen oder Migrieren der WordPress-Website die folgenden Informationen zum Verbessern der Leistung und Ermöglichen zusätzlicher Funktionalität.

Maßnahme Option
Festlegen von App Service-Planmodus und -Größe und Aktivieren der Skalierung Skalieren einer Web-App in Azure App Service.
Aktivieren dauerhafter Datenbankverbindungen WordPress arbeitet standardmäßig nicht mit dauerhaften Datenbankverbindungen, was dazu führen kann, dass Ihre Verbindung mit der Datenbank nach mehreren Verbindungen gedrosselt wird. Um dauerhafte Verbindungen zu ermöglichen, installieren Sie das Plug-In Persistent Database Connection Updater.
Verbessern der Leistung
Verwenden von Blobs für die Speicherung
  1. Erstellen Sie ein Azure-Speicherkonto.

  2. Unter Verwenden von Azure CDN erfahren Sie, wie Sie in Blobs gespeicherte Daten geografisch verteilen.

  3. Installieren und konfigurieren Sie das Plug-In Azure Storage for WordPress.

    Detaillierte Informationen zu Einrichtung und Konfiguration des Plug-Ins finden Sie im Benutzerhandbuch.

Aktivieren von E-Mail Aktivieren Sie SendGrid über den Azure Store. Installieren des SendGrid-Plug-Ins für WordPress
Konfigurieren eines benutzerdefinierten Domänennamens Konfigurieren Sie einen benutzerdefinierten Domänennamen in Azure App Service.
Aktivieren von HTTPS für einen benutzerdefinierten Domänennamen Aktivieren Sie HTTPS für eine Web-App in Azure App Service.
Lastenausgleich oder geografische Verteilung für Ihre Website Leiten Sie Datenverkehr mit Azure Traffic Manager weiter. Wenn Sie eine benutzerdefinierte Domäne verwenden, finden Sie unter Konfigurieren eines benutzerdefinierten Domänennamens in Azure App Service Informationen zum Verwenden von Traffic Manager mit benutzerdefinierten Domänennamen.
Aktivieren von automatisierten Sicherungen Sichern Sie die Web-App in Azure App Service.
Aktivieren der Diagnoseprotokollierung Aktivieren Sie die Diagnoseprotokollierung für Web-Apps in Azure App Service.

Nächste Schritte

Hinweis

Wenn Sie Azure App Service ausprobieren möchten, ehe Sie sich für ein Azure-Konto registrieren, können Sie unter App Service testen sofort kostenlos eine nur kurz verfügbare Starter-Web-App in App Service erstellen. Es ist keine Kreditkarte erforderlich, und Sie gehen keine Verpflichtungen ein.

Änderungen

Hinweise zu den Änderungen in App Service im Vergleich zu Websites finden Sie unter Azure App Service und vorhandene Azure-Dienste.