AMQP PHP-Extension für Plesk PHP 8

In diesem Artikel wird beschrieben, wie die PHP 8 AMQP-Extension für RabbitMQ unter Plesk Obsidian Linux installiert werden kann. Für die Installation wird eine Shell-Sitzung unter dem root Benutzer vorausgesetzt.


Vorbereitung

Für die Installation der AMQP-Extension müssen weitere Pakete installiert werden:


apt-get update
apt-get install librabbitmq-dev plesk-php80-dev plesk-php81-dev plesk-php82-dev plesk-php83-dev plesk-php84-dev plesk-php85-dev zlib1g-dev gcc make


Vor der Installation von PHP-Extensions sollte ein Server-Snapshot erstellt werden, damit Sie im Fehlerfall die Installation mit wenigen Klicks rückgängig machen können. Mehr erfahren →



Installation der AMQP-Extension


Nach der Installation der benötigten Abhängigkeiten muss AMQP für jede PHP-Version einzeln installiert werden:

printf "\n" | /opt/plesk/php/8.0/bin/pecl install amqp
printf "\n" | /opt/plesk/php/8.1/bin/pecl install amqp
printf "\n" | /opt/plesk/php/8.2/bin/pecl install amqp
printf "\n" | /opt/plesk/php/8.3/bin/pecl install amqp  
printf "\n" | /opt/plesk/php/8.4/bin/pecl install amqp
printf "\n" | /opt/plesk/php/8.5/bin/pecl install amqp


Nach der Installation muss die neue Extension noch zur PHP-Konfiguration hinzugefügt werden:

echo "extension=amqp.so" > /opt/plesk/php/8.0/etc/php.d/amqp.ini
echo "extension=amqp.so" > /opt/plesk/php/8.1/etc/php.d/amqp.ini
echo "extension=amqp.so" > /opt/plesk/php/8.2/etc/php.d/amqp.ini
echo "extension=amqp.so" > /opt/plesk/php/8.3/etc/php.d/amqp.ini
echo "extension=amqp.so" > /opt/plesk/php/8.4/etc/php.d/amqp.ini
echo "extension=amqp.so" > /opt/plesk/php/8.5/etc/php.d/amqp.ini


Um die neue Konfiguration auch über das Plesk Webinterface zu ermöglichen, müssen die PHP-Handler neu eingelesen werden:

plesk bin php_handler --reread


Anschließend müssen die betroffenen PHP-Handler neu gestartet werden, um das neue AMQP-Modul zu verwenden:


Warnung: Durch den Neustart der PHP-Module werden alle laufenden PHP-Prozesse beendet und neu gestartet. Sollte die Installation auf einem Produktivsystem vorgenommen werden, empfehlen wir, diese Änderung nachts durchzuführen.


# PHP 8.0
systemctl restart plesk-php80-fpm

# PHP 8.1
systemctl restart plesk-php81-fpm

# PHP 8.2
systemctl restart plesk-php82-fpm

# PHP 8.3
systemctl restart plesk-php83-fpm

# PHP 8.4
systemctl restart plesk-php84-fpm

# PHP 8.5
systemctl restart plesk-php85-fpm