yiisoft / yii2-redis
Redis Cache, Session and ActiveRecord for the Yii framework
Fund package maintenance!
Open Collective
yiisoft
Tidelift
Installs: 9 172 950
Dependents: 282
Suggesters: 27
Security: 1
Stars: 452
Watchers: 49
Forks: 183
Open Issues: 33
Type:yii2-extension
Requires
- ext-openssl: *
- yiisoft/yii2: ~2.0.39
Requires (Dev)
- phpunit/phpunit: <7
- yiisoft/yii2-dev: ~2.0.39
README
Redis Cache, Session and ActiveRecord for Yii 2
This extension provides the redis key-value store support for the Yii framework 2.0.
It includes a Cache
and Session
storage handler and implements the ActiveRecord
pattern that allows
you to store active records in redis.
For license information check the LICENSE-file.
Documentation is at docs/guide/README.md.
Requirements
At least redis version 2.6.12 is required for all components to work properly.
Installation
The preferred way to install this extension is through composer.
Either run
php composer.phar require --prefer-dist yiisoft/yii2-redis:"~2.0.0"
or add
"yiisoft/yii2-redis": "~2.0.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' ] ] ];