yiisoft / yii2-redis
Redis Cache, Session and ActiveRecord for the Yii framework
Fund package maintenance!
Open Collective
yiisoft
Tidelift
Installs: 9 043 512
Dependents: 282
Suggesters: 27
Security: 1
Stars: 451
Watchers: 49
Forks: 184
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'
]
]
];