Shopware 6.2.3 Sessions über Redis steuern

Moin!

Ich möchte die Sessions von Shopware 6 über Redis steuern, dafür habe entsprechen Einstellungen gesetzt:

$ cat -n config/services.yaml 
     1	services:
     2 Redis:
     3 class: Redis
     4 calls:
     5 - method: connect
     6 arguments:
     7 - '%env(REDIS_SESSION_HOST)%'
     8 - '%env(REDIS_SESSION_PORT)%'
     9 Symfony\Component\HttpFoundation\Session\Storage\Handler\RedisSessionHandler:
    10 arguments:
    11 - '@Redis'

$ cat -n config/packages/framework.yaml
     1	framework:
     2 session:
     3 handler_id: Symfony\Component\HttpFoundation\Session\Storage\Handler\RedisSessionHandler

$ grep -i "redis" .env 
REDIS_SESSION_HOST=127.0.0.1
REDIS_SESSION_PORT=6379

Im Prod Log melet folgenden Fehler:

[2020-08-07 11:12:17] php.CRITICAL: Uncaught Error: Class 'Redis' not found {"exception":"[object] (Error(code: 0): Class 'Redis' not found at /home/--ersetzt--/var/cache/prod_h6e7a2e73dd5d3d2f083a7c4b7a5e7e6c/Container8IpO5z5/srcShopware_Production_KernelProdContainer.php:19523)"} []

$ cat -n var/cache/prod_h6e7a2e73dd5d3d2f083a7c4b7a5e7e6c/Container8IpO5z5/srcShopware_Production_KernelProdContainer.php | grep -C2 "19523"
 19521 protected function getSession_Storage_NativeService()
 19522 {
 19523 $a = new \Redis();
 19524 $a->connect($this->getEnv('REDIS_SESSION_HOST'), $this->getEnv('REDIS_SESSION_PORT'));
 19525	

Der Fehler tritt erst nach einem Update auf, welches ich heute durchgeführt habe.
Verwendet wird:

Symfony 4.4.4
Shopware 6.2.3

Kann jemand einen Fehler feststellen?

Es fehlt die Redis Extension für PHP. Die musst du auf dem Server installieren.

1 „Gefällt mir“

Stimmt, Shopware hat die .htaccess beim Update überschrieben, womit eine andere PHP Version genutzt wurde.
Danke!

Ich habe bei uns eine entsprechende Dokumentation erstellt: