yiisoft/yii2-redis

Redis Cache, Session and ActiveRecord for the Yii framework

Fund package maintenance!
Open Collective
yiisoft
Tidelift

Installs: 11 512 757

Dependents: 299

Suggesters: 27

Security: 2

Stars: 450

Watchers: 43

Forks: 182

Open Issues: 35

Type:yii2-extension

pkg:composer/yiisoft/yii2-redis

2.1.0 2025-12-25 10:15 UTC

README

Yii Framework

Redis Cache, Session and ActiveRecord for Yii 2


This extension provides redis key-value store support for the Yii framework 2.0. It provides Cache, Mutex, and Session handlers, as well as an ActiveRecord implementation that allows you to store and query structured data in a familiar way.

For license information, see the LICENSE file.

Documentation is at docs/guide/README.md.

Latest Stable Version Total Downloads build codecov Static Analysis

Requirements

Redis version 2.6.12 or later is required for all components to work properly.

Installation

Important

  • The minimum required PHP version is PHP 7.4.
  • It works best with PHP 8.

The preferred way to install this extension is through composer.

Either run

php composer.phar require --prefer-dist yiisoft/yii2-redis:"~2.1.0"

or add

"yiisoft/yii2-redis": "~2.1.0"

to the require section of your composer.json.

Configuration

To use this extension, you have to configure the Connection class in your application configuration:

return [
    //....
    'components' => [
        'redis' => [
            'class' => 'yii\redis\Connection',
            'hostname' => 'localhost',
            'port' => 6379,
            'database' => 0,
        ],
    ]
];

SSL configuration example:

return [
    //....
    'components' => [
        'redis' => [
            'class' => 'yii\redis\Connection',
            'hostname' => 'localhost',
            'port' => 6380,
            'database' => 0,
            'useSSL' => true,
            // Use contextOptions for more control over the connection (https://www.php.net/manual/en/context.php), not usually needed
            'contextOptions' => [
                'ssl' => [
                    'local_cert' => '/path/to/local/certificate',
                    'local_pk' => '/path/to/local/private_key',
                ],
            ],
        ],
    ],
];

Configuring The Connection Scheme

By default, Redis will use the tcp scheme when connecting to your Redis server; however, you may use TLS / SSL encryption by specifying a scheme configuration option in your application configuration:

return [
    //....
    'components' => [
        'redis' => [
            //....
            'scheme' => 'tls'
        ]
    ]
];

Documentation

Support the project

Open Collective

Follow updates

Official website Follow on X Telegram Slack