Amazon Linux 2 の PHP7.2 で、冗長化構成とかして、セッションを ElastiCache の Redis に保存して使う場合に php-pecl-redis をインストールする方法。
2019/6/3 更新
祝、Amazon Extra の PHP にも redis が入っていることを確認しました!
良かった。良かった。
もう remi レポジトリを追加しなくて良いです。
$ sudo amazon-linux-extras install php7.2
$ sudo yum install --enablerepo=amzn2extra-php7.2 php-pecl-redis
$ sudo systemctl restart php-fpm
$ sudo vi /etc/php.d/50-redis.ini
session.save_handler = redis
session.save_path = "[ElastiCacheのエンドポイント]"
Remi レポジトリ削除方法
yum のインストールし直しをしても良いかもです。
$ sudo yum remove php-pecl-redis
$ sudo vi /etc/yum.repos.d/
2019/3 時点の情報
他のブログ記事だと、素の Apache や PHP7.2 での方法しか書いてなかった。
Epel のレポジトリだと古いバージョンの PHP しかできないみたいなので、
Remi のレポジトリを使う。
$ sudo yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
$ sudo yum install --enablerepo=remi-php72 php-pecl-redis
$ sudo systemctl restart php-fpm
$ sudo vi /etc/php.d/50-redis.ini
session.save_handler = redis
session.save_path = "[ElastiCacheのエンドポイント]"
concrete5 CMS のみで利用する場合は /etc/php.d/50-redis.ini
の編集は不要です。
Redis 自体は、サーバー上で動かさないのでインストールしないです。
この記事は、 concrete5 CMS が Version 8.5.0 で Redis に標準対応して、月間1000万PVのサイトで、ElastiCache の Redis でキャッシュやセッションを保持させて冗長化させているんだけれど、Amazon Linux でしか試したことがなかったので、Amazon Linux 2 で可能かどうか検証したために作成しました。
参考