Wie installiert man die PHP Zip Extension in CentOS/RHEL?

Veröffentlicht 27. August 2024

Problem: Installation der PHP Zip-Erweiterung auf CentOS/RHEL

Die PHP Zip-Erweiterung ermöglicht die Arbeit mit ZIP-Archiven in PHP-Anwendungen. Sie ist standardmäßig nicht in CentOS- und RHEL-Distributionen enthalten. Benutzer haben oft Schwierigkeiten bei der Installation dieser Erweiterung, da der Prozess im Vergleich zu anderen PHP-Modulen komplexer sein kann.

Schritte zur Installation der PHP Zip-Erweiterung

PHP-Version überprüfen

Zunächst müssen Sie Ihre PHP-Version kennen. Öffnen Sie ein Terminal und führen Sie aus:

php -v

Dies zeigt Ihre aktuelle PHP-Version an. Ihre PHP-Version bestimmt, welches Paket Sie installieren müssen.

PHP Zip-Erweiterung auf CentOS 7 installieren

Auf CentOS 7 verwenden Sie YUM, um die PHP Zip-Erweiterung zu installieren:

  1. Öffnen Sie ein Terminal.
  2. Führen Sie aus:
sudo yum install php-zip
  1. Geben Sie Ihr Passwort ein, wenn Sie dazu aufgefordert werden.

PHP Zip-Erweiterung auf CentOS 8 installieren

CentOS 8 verwendet DNF. Um die PHP Zip-Erweiterung zu installieren:

  1. Öffnen Sie ein Terminal.
  2. Führen Sie aus:
sudo dnf install php-zip
  1. Geben Sie Ihr Passwort ein, wenn Sie dazu aufgefordert werden.

Installation überprüfen

Nach der Installation überprüfen Sie, ob die Zip-Erweiterung aktiv ist:

  1. Führen Sie im Terminal aus:
php -m | grep zip
  1. Wenn Sie "zip" in der Ausgabe sehen, ist die Erweiterung aktiv.

Sie können auch eine PHP-Datei mit folgendem Inhalt erstellen:

<?php
if (extension_loaded('zip')) {
    echo "ZIP-Erweiterung ist installiert.";
} else {
    echo "ZIP-Erweiterung ist nicht installiert.";
}
?>

Speichern Sie dies als "check_zip.php" und führen Sie es in Ihrem Browser oder der Kommandozeile aus, um die Installation zu bestätigen.

Alternative Methoden zur Installation der PHP Zip-Erweiterung

Verwendung von PECL (PHP Extension Community Library)

PECL bietet eine weitere Möglichkeit, PHP-Erweiterungen zu installieren. Um PECL für die Installation der ZIP-Erweiterung zu verwenden:

  1. Installieren Sie PECL:

    sudo yum install php-pear
  2. Installieren Sie die ZIP-Erweiterung über PECL:

    sudo pecl install zip
  3. Fügen Sie die Erweiterung zu Ihrer PHP-Konfiguration hinzu:

    echo "extension=zip.so" | sudo tee -a /etc/php.ini
  4. Starten Sie Ihren Webserver neu, um die Änderungen anzuwenden.

Kompilieren aus dem Quellcode

Sie können die ZIP-Erweiterung aus dem Quellcode kompilieren:

  1. Laden Sie den Quellcode herunter:

    wget https://pecl.php.net/get/zip-1.19.3.tgz
  2. Entpacken Sie das Archiv:

    tar -xzvf zip-1.19.3.tgz
  3. Wechseln Sie in das entpackte Verzeichnis:

    cd zip-1.19.3
  4. Bereiten Sie die Build-Umgebung vor:

    phpize
  5. Konfigurieren Sie den Build:

    ./configure
  6. Kompilieren und installieren Sie:

    make
    sudo make install
  7. Fügen Sie die Erweiterung zu Ihrer PHP-Konfiguration hinzu:

    echo "extension=zip.so" | sudo tee -a /etc/php.ini
  8. Starten Sie Ihren Webserver neu, um die Änderungen anzuwenden.

Ersetzen Sie "1.19.3" durch die Version, die Sie installieren möchten.

Behebung häufiger Probleme

Repository-Probleme

Möglicherweise treten Probleme mit Paket-Repositories auf, wenn Sie versuchen, die PHP Zip-Erweiterung zu installieren. Um diese zu beheben:

  1. Aktualisieren Sie Ihre Repository-Listen:

    sudo yum clean all
    sudo yum update
  2. Wenn das System das PHP Zip-Paket nicht finden kann, fügen Sie das EPEL-Repository hinzu:

    sudo yum install epel-release
    sudo yum update

Versuchen Sie nach dem Hinzufügen von EPEL erneut, die PHP Zip-Erweiterung zu installieren.

Abhängigkeitskonflikte

Möglicherweise treten Abhängigkeitskonflikte bei der Installation der PHP Zip-Erweiterung auf. Um diese zu beheben:

  1. Überprüfen Sie auf widersprüchliche oder fehlende Abhängigkeiten:

    sudo yum deplist php-zip
  2. Wenn es fehlende Abhängigkeiten gibt, installieren Sie diese:

    sudo yum install [Paket-Name]
  3. Aktualisieren Sie Ihre Systempakete:

    sudo yum update
  4. Wenn Sie immer noch Probleme haben, versuchen Sie, die PHP Zip-Erweiterung mit der Option "--skip-broken" zu installieren:

    sudo yum install php-zip --skip-broken

Diese Option ermöglicht es yum, Pakete zu überspringen, die Abhängigkeitsprobleme verursachen könnten.