1. Home
  2. Wissensdatenbank
  3. Software & Skriptsprachen
  4. Shopware
  5. Shopware 6: Sessions über Redis steuern
  1. Home
  2. Wissensdatenbank
  3. Software & Skriptsprachen
  4. Shopware 6: Sessions über Redis steuern

Shopware 6: Sessions über Redis steuern

Standardmäßig speichert Symfony die Sessions auf Dateiebene. Im folgendem Artikel wird beschrieben, wie die Sessions über Redis gesteuert werden können.

Hinweis

Aktuell wird Redis von Shopware 6 nicht offiziell unterstützt. Der beschriebe Weg entspricht der Symfony Dokumentation.

Redis kann momentan ausschließlich auf einem eigenem FlexServer verwendet werden. Vorab müssen wir jedoch Redis installieren, kommen Sie dafür gerne auf uns zu.

In der genutzten php.ini wird die Redis Extension hinzugefügt werden:

extension="redis.so"

Anschließend werden folgende Dateien hinzugefügt:

config/services.yaml

services:
    Redis:
        class: Redis
        calls:
            - method: connect
              arguments:
                  - '%env(REDIS_SESSION_SOCKET)%'
    Symfony\Component\HttpFoundation\Session\Storage\Handler\RedisSessionHandler:
        arguments:
            - '@Redis'

config/packages/framework.yaml

framework:
    session:
        handler_id: Symfony\Component\HttpFoundation\Session\Storage\Handler\RedisSessionHandler

In der .env Datei wird die entsprechende Variable zum Socket noch gesetzt:

.env

REDIS_SESSION_SOCKET=/home/tmp/redis.sock

Damit die Änderung greifen muss, muss der Cache geleert werden:

$ php bin/console cache:clear
$ php bin/console theme:compile

Aktualisiert am 1. Juni 2021

War dieser Artikel hilfreich?

Ähnliche Artikel