PHPのセッションをAWSのRedisにする

AWSかどうかはほとんど関係ないが、
PHPのセッションをAWSのElastiCacheのRedisにして、
サーバ間でセッション共有する方法

yum install php-pecl-redis
とか
yum install php54-pecl-redis
とか。自分の環境に合わせてphp**-pecl-redisをyumでインスール。

自分の環境ではPHPのセッションデータは
/etc/php.ini
ではなく、
/etc/httpd/conf.d/php.conf
内に

php_value session.save_handler "redis"
php_value session.save_path "〜〜〜〜〜^.cache.amazonaws.com:6379"

と書いてApache再起動の必要があった。
/etc/php.iniに書いても一切反映されずキレそうになった。

ああ、AWSでのRedisの作成なんて画面見てフガフガ言いながら作ればあっさり出来るのでここでは割愛。
それよりセキュリティグループの付け方のミスで接続出来ないことがあるので、

$redis = new Redis();
$redis->connect('〜〜〜〜.cache.amazonaws.com',6379);
?>

みたいなコードを書いて、実行してもすぐに結果が返るか確認すると吉(このプログラムの場合、何も表示されず終了。
もしセキュリティグループがいまいちだったら、
結果が帰ってこないで凍りつくはず。)




コメントをどうぞ