Vi erbjuder Redis på alla våra webbhotellkonton samt Agency-tjänster. Detta görs via socket till skillnad från via port som används som standard i Laravel. För att få det hela att fungera med exempelvis queue-workers behöver du därför göra lite inställningar i ditt Laravel-projekt.
- Börja med att lägga in att Predis Composer-paketet krävs i projektet. Kör alltså följande kommando i roten för ditt projekt:
composer require predis/predis
Detta då det inte går att använda PECL-varianten av phpredis för att komma åt Redis via socket. - Under Redis-inställningarna i projektets
config/database.php
, lägg till rader förscheme
ochpath
så det ser ut så här:
'default' => [ 'url' => env('REDIS_URL'), 'host' => env('REDIS_HOST', '127.0.0.1'), 'password' => env('REDIS_PASSWORD', null), 'port' => env('REDIS_PORT', '6379'), 'database' => env('REDIS_DB', '0'), 'scheme' => env('REDIS_SCHEME', 'tcp'), 'path' => env('REDIS_PATH', ''), ], 'cache' => [ 'url' => env('REDIS_URL'), 'host' => env('REDIS_HOST', '127.0.0.1'), 'password' => env('REDIS_PASSWORD', null), 'port' => env('REDIS_PORT', '6379'), 'database' => env('REDIS_CACHE_DB', '1'), 'scheme' => env('REDIS_SCHEME', 'tcp'), 'path' => env('REDIS_PATH', ''), ],
- I
.env
-filen för ditt projekt, ersätt alla rader som börjar medREDIS_*
med följande:
REDIS_CLIENT=predis REDIS_SCHEME=unix REDIS_PATH=/tmp/redis REDIS_PASSWORD=null REDIS_PORT=0
- För att använda Redis för att hantera kön, uppdatera
QUEUE_CONNECTION
tillredis
enligt standardinställningarna för Redis i Laravel. Du kan användaredis
som bådeCACHE_DRIVER
och somSESSION_DRIVER
. - Rensa cachen för alla inställningar med
php artisan config:cache
för att få ändringarna ovan att appliceras.
Om något nu köas upp kommer detta hanteras via Redis.