1.2.2. Aktualisierung von Drupal 8 ohne Drush und ohne Composer.
Wenn Sie Drupal von der Seite drupal.org heruntergeladen und installiert haben:
https://www.drupal.org/project/drupal
können beim Update Probleme auftreten, da Drush und Composer Drupal nicht auf übliche Weise aktualisieren können. Deshalb müssen Sie Drupal entweder durch Dateiaustausch aktualisieren oder die Projektstruktur so ändern, dass Composer Drupal aktualisieren kann. In diesem Artikel besprechen wir die erste Variante, wie man Drupal ohne Drush und Composer aktualisiert.
Vor dem Update sollten Sie unbedingt ein vollständiges Backup der Seite erstellen. Kopieren Sie alle Dateien und die Datenbank. Fehler sind selten, aber die Wiederherstellung der Seite kann Zeit kosten, deshalb besser vorsorgen.
Wenn Ihre Website bereits online ist und ein Abschalten auch nur für kurze Zeit die Umsätze Ihrer Firma oder des Kunden beeinträchtigen könnte, sollten Sie am besten eine Kopie der Seite erstellen und das Update zunächst an der Kopie ausprobieren. Nach einem erfolgreichen Update können Sie dann die gleiche Prozedur auf der Live-Seite durchführen oder die Live-Seite durch die lokal aktualisierte Version ersetzen.
Halten Sie alle Ihre Schritte, Fehler und Meldungen während des Updates fest, damit Sie den Ablauf später leichter wiederholen können.
Versuchen Sie nicht, das Drupal 8-Update über FTP auf einem entfernten Server durchzuführen, das dauert zu lange. Wenn Sie SSH-Zugang zum Server haben, können Sie die Drupal-Dateien mit wget herunterladen, was viel schneller ist.
Wenn Sie nun das Backup haben, können Sie mit dem Update beginnen.
1. Melden Sie sich als Administrator an, der Zugriff auf update.php und die Möglichkeit hat, die Seite in den Wartungsmodus zu versetzen.
2. Versetzen Sie die Seite in den Wartungsmodus:
/admin/config/development/maintenance
Konfiguration > Wartungsmodus
Administration > Configuration > Development > Maintenance mode
3. Löschen Sie die Ordner core und vendor im Root-Verzeichnis der Website.
Nach dem Löschen dieser Ordner wird die Website nicht mehr funktionieren und nicht erreichbar sein.
4. Falls Sie die Dateien .htaccess oder robots.txt geändert haben, speichern Sie diese Änderungen, denn alle Dateien im Root müssen ebenfalls aktualisiert werden.
Speichern Sie auch Änderungen in der composer.json, falls Sie Bibliotheken oder Module via Composer installiert haben, müssen Sie diese später erneut installieren. Falls viele Änderungen vorhanden sind, ist es besser, composer.json und composer.lock nicht zu überschreiben und so zu belassen.
5. Manchmal betreffen Änderungen die default.settings.php, was bedeutet, dass Sie diese Anpassungen auch in Ihrer settings.php übernehmen müssen. Eine Liste der Änderungen für Ihre Drupal-Version finden Sie auf der Seite "View all releases" des Drupal-Projekts:
https://www.drupal.org/project/drupal
Dies passiert jedoch selten, vor allem wenn Sie nur eine Minor-Version aktualisieren (z.B. 8.5.x → 8.5.y), dann können Sie diesen Schritt meist überspringen.
6. Laden Sie die neue Drupal-Version von der Projektseite oder von "View all releases" herunter.
https://www.drupal.org/project/drupal
Kopieren Sie aus dem neuen Paket die Ordner vendor, core und alle Dateien aus dem Root-Verzeichnis der Website.
Laden Sie diese Dateien auf Ihre Website hoch.
Wenn Sie SSH-Zugriff auf den Server haben, können Sie die Drupal-Dateien auch direkt außerhalb Ihres Webroots herunterladen:
wget https://www.drupal.org/files/projects/drupal-x.y.z.tar.gz tar -zxvf drupal-x.y.z.tar.gz
Und dann die Dateien in Ihr Webverzeichnis kopieren:
cp -R drupal-x.y.z/* drupal-x.y.z/.htaccess /path/to/your/installation
Falls FTP der einzige Weg ist, verwenden Sie FileZilla mit 10 parallelen Verbindungen, damit der Vorgang schneller läuft:
7. Stellen Sie Ihre Änderungen an robots.txt, .htaccess, default.settings.php, settings.php und composer.json wieder her.
8. Führen Sie die Datei update.php aus, um die Datenbank für die neue Drupal-Version zu aktualisieren. Dazu können Sie in der settings.php folgende Zeile hinzufügen:
$settings['update_free_access'] = TRUE;
Das erlaubt jedem Benutzer den Zugriff auf update.php.
Öffnen Sie /update.php im Browser:
9. Überprüfen Sie, ob die Drupal-Version aktualisiert wurde. Gehen Sie auf die Statusbericht-Seite:
/admin/reports/status
10. Setzen Sie die Seite zurück in den normalen Betriebsmodus:
/admin/config/development/maintenance
11. Vergessen Sie nicht, nach update.php den Wert wieder auf FALSE zu setzen:
$settings['update_free_access'] = FALSE;
Falls Sie Schwierigkeiten oder Fehler haben, schreiben Sie gerne Kommentare.