Zum Inhalt springen

Upgrade von XOOPS 2.5 auf 2.7

  • PHP 8.2+ erforderlich — PHP 7.x wird nicht mehr unterstützt
  • Composer-verwaltete Abhängigkeiten — Core-Bibliotheken verwaltet via composer.json
  • PSR-4-Autoloading — Modulklassen können Namensräume verwenden
  • Verbessertes XoopsObject — Neue getVar()-Typsicherheit, veraltete obj2Array()
  • Bootstrap 5 Admin — Admin-Panel mit Bootstrap 5 umgestaltet
  • PHP 8.2+ auf Ihrem Server verfügbar
  • Vollständige Datenbanksicherung (mysqldump -u user -p xoops_db > backup.sql)
  • Vollständige Datensicherung Ihrer Installation
  • Liste der installierten Module und deren Versionen
  • Benutzerdefiniertes Design separat gesichert
// mainfile.php — temporär hinzufügen
define('XOOPS_MAINTENANCE', true);
Terminal-Fenster
wget https://github.com/XOOPS/XoopsCore27/releases/latest/download/xoops-2.7.x.zip
unzip xoops-2.7.x.zip

Laden Sie die neuen Dateien hoch, ausgenommen:

  • uploads/ — Ihre hochgeladenen Dateien
  • xoops_data/ — Ihre Konfiguration
  • modules/ — Ihre installierten Module
  • themes/ — Ihre Designs
  • mainfile.php — Ihre Website-Konfiguration
Terminal-Fenster
rsync -av --exclude='uploads/' --exclude='xoops_data/' \
--exclude='modules/' --exclude='themes/' --exclude='mainfile.php' \
xoops-2.7/ /var/www/html/

Navigieren Sie in Ihrem Browser zu https://yourdomain.com/upgrade/. Der Upgrade-Assistent wendet Datenbankmigrations an.

XOOPS 2.7-Module müssen mit PHP 8.2 kompatibel sein. Überprüfen Sie das Modul-Ökosystem auf aktualisierte Versionen.

Klicken Sie im Admin → Module auf Aktualisieren für jedes installierte Modul.

Entfernen Sie die Zeile XOOPS_MAINTENANCE aus mainfile.php und vergewissern Sie sich, dass alle Seiten korrekt geladen werden.

“Class not found”-Fehler nach dem Upgrade

  • Führen Sie composer dump-autoload im XOOPS-Root aus
  • Löschen Sie das Verzeichnis xoops_data/caches/

Modul beschädigt nach der Aktualisierung

  • Überprüfen Sie die GitHub-Versionen des Moduls für eine 2.7-kompatible Version
  • Das Modul benötigt möglicherweise Codeänderungen für PHP 8.2 (veraltete Funktionen, typisierte Eigenschaften)

Admin-Panel CSS beschädigt

  • Leeren Sie Ihren Browser-Cache
  • Stellen Sie sicher, dass xoops_lib/ während des Datei-Uploads vollständig ersetzt wurde