Debian/Plesk: Redis, Memcache und APCU unter Plesk installieren + GnuPG für PHP 8.1
Im folgenden werden wir Redis, Memcache, APCU und GnuPG für Plesk installieren. Die Anleitung lässt sich dem Grunde nach auf jede PHP-Version übertragen.
Zunächst benötigen wir natürlich die entsprechende PHP-Version von Plesk
apt-get install -y plesk-php74-dev plesk-php80-dev plesk-php81-dev
ln /bin/sed /usr/bin/sed #ggf notwendig - vorher mit which sed pfad testen
Anschließend müssen wir einige Grundlagen installieren
apt-get update
apt-get install -y memcached
apt-get install -y autoconf
apt-get install -y automake
apt-get install -y gcc
apt-get install -y libmemcached-dev
apt-get install -y libhashkit-dev
apt-get install -y pkg-config
apt-get install -y zlib1g-dev
apt-get install -y make
apt-get install -y libgpgme11-dev
Danach erstellen wir die entsprechenden PHP-Module mit folgenden Befehlen:
/opt/plesk/php/7.3/bin/pecl install apcu
/opt/plesk/php/7.4/bin/pecl install apcu
/opt/plesk/php/8.0/bin/pecl install apcu
/opt/plesk/php/8.1/bin/pecl install apcu
/opt/plesk/php/7.3/bin/pecl install redis
/opt/plesk/php/7.4/bin/pecl install redis
/opt/plesk/php/8.0/bin/pecl install redis
/opt/plesk/php/8.1/bin/pecl install redis
/opt/plesk/php/7.4/bin/pecl install gnupg
/opt/plesk/php/8.1/bin/pecl install gnupg
/opt/plesk/php/7.4/bin/pecl install memcached
/opt/plesk/php/8.1/bin/pecl install memcached
Damit die Module geladen werden müssen diese auch entsprechend hinterlegt werden:
echo "extension=/opt/plesk/php/7.3/lib/php/modules/apcu.so" > /opt/plesk/php/7.3/etc/php.d/apcu.ini
echo "extension=/opt/plesk/php/7.4/lib/php/modules/apcu.so" > /opt/plesk/php/7.4/etc/php.d/apcu.ini
echo "extension=/opt/plesk/php/8.0/lib/php/modules/apcu.so" > /opt/plesk/php/8.0/etc/php.d/apcu.ini
echo "extension=/opt/plesk/php/8.1/lib/php/modules/apcu.so" > /opt/plesk/php/8.1/etc/php.d/apcu.ini
echo "extension=/opt/plesk/php/7.3/lib/php/modules/redis.so" > /opt/plesk/php/7.3/etc/php.d/redis.ini
echo "extension=/opt/plesk/php/7.4/lib/php/modules/redis.so" > /opt/plesk/php/7.4/etc/php.d/redis.ini
echo "extension=/opt/plesk/php/8.0/lib/php/modules/redis.so" > /opt/plesk/php/8.0/etc/php.d/redis.ini
echo "extension=/opt/plesk/php/8.1/lib/php/modules/redis.so" > /opt/plesk/php/8.1/etc/php.d/redis.ini
echo "extension=/opt/plesk/php/7.4/lib/php/modules/gnupg.so" > /opt/plesk/php/7.4/etc/php.d/gnupg.ini
echo "extension=/opt/plesk/php/8.1/lib/php/modules/gnupg.so" > /opt/plesk/php/8.1/etc/php.d/gnupg.ini
echo "extension=/opt/plesk/php/7.4/lib/php/modules/memcached.so" > /opt/plesk/php/7.4/etc/php.d/memcached.ini
echo "extension=/opt/plesk/php/8.1/lib/php/modules/memcached.so" > /opt/plesk/php/8.1/etc/php.d/memcached.ini
Danach müssen wir die PHP-Konfiguratin neu einlesen und die Dienste neu starten:
plesk bin php_handler --reread
service plesk-php73-fpm restart
service plesk-php74-fpm restart
service plesk-php80-fpm restart
service plesk-php81-fpm restart
Als nächstes machen wir uns daran den Redis-Server zu installieren:
apt-get install redis-server
systemctl start redis-server
systemctl enable redis-server
Danach ändern wir die Redis-Konfiguration mit
nano /etc/redis/redis.conf
und fügen am Ende der Datei ein:
maxmemory 256mb
maxmemory-policy allkeys-lru
requirepass secretpasswort
rename-command CONFIG secretconfig
„secretpasswort“ können wir doch ein Passwort ersetzen und „secretconfig“ ersetzen wir mit dem gewünschten geheimen Befehl um die Konfiguration per CLI zu ändern. Danach kann der Redis-Server neu gestartet werden mit
systemctl restart redis-server
Wichtiger Hinweis / Cache-Key-Salt
In der wp-config.php sollte bzw. muss ein Salt (insbesondere für Redis und memcached) für den Cache eingetragen werden. Ansonsten kann es passieren, dass der Cache in andere WordPress-Installationen leakt! Zusätzlich kann bei Redis auch eine andere Redis-Datenbank (1-16) je Seite angesprochen werden:
define( 'WP_CACHE_KEY_SALT', 'geiledomain_6542bsPkn76vF' );
define( 'WP_REDIS_DATABASE', 15);