2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Laravel 6.xでredisをセッションサーバーとして使えるようにする

Posted at

Laravel 6.x でセッションサーバーとしてredisを使おうとして、インストールや設定に少し手間取ったので、備忘録としての記録です。

環境

ubuntu 18.04
Laravel 6.20.x

前提条件

php-fpm, redisはインストール済み

インストール

まずは、peclをインストールしましょう。php-pearに含まれます。
そして、peclからphpredisのインストールです。

predisでも動作しますが、今回は公式で推奨されるphpredisをインストールしたいと思います。

6.x 日本語ドキュメント

LaravelでRedis使用するには、PECLを使用してPhpRedis PHP拡張をインストールすることを推奨します。インストール方法は複雑ですが、Redisをヘビーユースするアプリケーションではより良いパフォーマンスが得られます

## peclのインストール
sudo apt install php-pear

## phpredisのインストール
sudo pecl install redis

php.iniの修正

extensionの追加。
追加後、php-fpmは再起動してください。

/etc/php/7.x/fpm/php.ini
extension=redis

Laravelの設定

各設定の変更

.env
SESSION_DRIVER=redis #fileから変更
config/database.php
# redisのクライアントがphpredisになっているか確認
'redis' => [
    'client' => env('REDIS_CLIENT', 'phpredis'),

確認

webページを開いてみると、redisがセッションサーバーとして機能してるのが分かると思います。

$ redis-cli
> keys *
1) "sample_database_cache:AIn7Io8yHuhTolvAJhk5ITLdMsqXL1FqsuOTSDBl"
> get ample_database_cache:AIn7Io8yHuhTolvAJhk5ITLdMsqXL1FqsuOTSDBl
"s:198:\"a:3:{s:6:\"_token\";s:40:\"FBn1BGQlMBUXXMQBI2SDDBuvKIr31YTAyOo4X20L\";s:6:\"_flash\";a:2:{s:3:\"old\";a:0:{}s:3:\"new\";a:0:{}}s:9:\"_previous\";a:1:{s:3:\"url\";s:40:\"https://sample.com/xxx\";}}\";"
> 
2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?