memcached をインストールしましたので、その時のメモです。
クラスタ環境にて、memcached を使用することでセッションの情報が共有できるようになります。
◆まずは、memcached をインストールします。 # yum -y install memcached memcached.x86_64 0:1.4.4-3.el6 ◆設定ファイルは使わないので削除します。 #rm /etc/sysconfig/memcached ◆起動スクリプトでは、起動できないので起動スクリプト変更します。 # vi /etc/init.d/memcached #!/bin/bash # # memcached # # chkconfig: 345 80 20 # description: memcached TARGET=memcached DST_BIN=/usr/bin/${TARGET} EXEC_USER=memcached CACHE_SIZE=512 RETVAL=0 PORT=11211 start() { echo -n ""Starting ${TARGET}: "" ${DST_BIN} -d -u ${EXEC_USER} -m ${CACHE_SIZE} -p ${PORT} echo } stop() { echo -n ""Shutting down ${TARGET}: "" killall ${TARGET} echo } case ""$1"" in start) start ;; stop) stop ;; restart) stop start ;; *) echo ""Usage: `basename $0` {start|stop|restart}"" >&2 exit 1 esac exit 0 ◆memcache 自動起動に設定します。 # chkconfig memcached on ◆memcache 用のphpのモジュールをインストールします。 #yum install php-pecl-memcache.x86_64 memcached-devel.x86_64 0:1.4.4-3.el6 ◆phpの設定変更します。 # vi /etc/php.ini ---(下記を変更)------------------------------- session.save_handler = files ↓ ;session.save_handler = files session.save_path = ""/var/lib/php/session"" ↓ ;session.save_path = ""/var/lib/php/session"" --------------------------------------------- ◆php のmemcacheモジュールの設定を変更します。 # vi /etc/php.d/memcache.ini session.save_path=""tcp://192.168.0.10:11211,tcp://192.168.0.20:11211"" # vi /etc/php.d/memcache.ini ---(下記を変更)---------------------------------------------------------------- ;session.save_handler=memcache ↓ session.save_handler=memcache ;session.save_path=""tcp://localhost:11211?persistent=1&weight=1&timeout=1&retry_interval=15"" ↓ session.save_path=""tcp://192.168.0.10:11211,tcp://192.168.0.20:11211"" ------------------------------------------------------------------------------- ◆PHPの設定反映するため、Apacheを再起動します。 # service httpd restart
[対象]
PHP 5.X
CentOS 6.X