Linux服务器配置Redis并启用PHP支持
redis目前(20150525)已经更新到了3.0版本,今天我们来学习如何在服务器部署Redis,并启用php支持。
redis
下载安装
redis的各个版本能够在http://download.redis.io/releases/找到
wget http://download.redis.io/releases/redis-stable.tar.gz
tar zxf redis-stable.tar.gz
cd redis-stable
make && make install
# 复制配置文件
cp redis.conf /etc/redis.conf
# 将二进制文件拷贝至 /usr/local/bin
cd src
cp redis-server redis-cli redis-benchmark /usr/local/bin/
至此Redis安装完成。
配置Redis
安装完成后需要我们进行一些配置工作。
redis-server -v
#Redis server v=3.0.1 sha=00000000:0 malloc=jemalloc-3.6.0 bits=64 build=3858e635de930c10
# 建立数据库文件夹
mkdir /var/lib/redis_db/ -p
vim /etc/redis.conf
# 修改以下变量
daemonize yes # 守护方式运行
logfile "/var/log/redis.log" # 日志文件
dir /var/lib/redis_db/ # 数据持久化文件夹
现在redis的基本运行已经配置完成,以后我们再讨论主从、持久化策略等高级特性。
运行redis
redis-server /etc/redis.conf
# 检查运行日志,还记得我们刚才配置的日志文件吗?
tail -100 /var/log/redis.log
# 显示
_._
_.-``__ ''-._
_.-`` `. `_. ''-._ Redis 3.0.1 (00000000/0) 64 bit
.-`` .-```. ```\/ _.,_ ''-._
( ' , .-` | `, ) Running in standalone mode
|`-._`-...-` __...-.``-._|'` _.-'| Port: 6379
| `-._ `._ / _.-' | PID: 19337
`-._ `-._ `-./ _.-' _.-'
|`-._`-._ `-.__.-' _.-'_.-'|
| `-._`-._ _.-'_.-' | http://redis.io
`-._ `-._`-.__.-'_.-' _.-'
|`-._`-._ `-.__.-' _.-'_.-'|
| `-._`-._ _.-'_.-' |
`-._ `-._`-.__.-'_.-' _.-'
`-._ `-.__.-' _.-'
`-._ _.-'
`-.__.-'
19337:M 25 May 22:32:40.369 # Server started, Redis version 3.0.1
19337:M 25 May 22:32:40.369 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.
19337:M 25 May 22:32:40.369 * DB loaded from disk: 0.000 seconds
19337:M 25 May 22:32:40.369 * The server is now ready to accept connections on port 6379
配置PHP
接着我们编译phpredis,项目地址
下载
git clone https://github.com/phpredis/phpredis.git phpredis
cd phpredis
/usr/local/php/bin/phpize
./configure
# 老高的环境变量没有导入所以编译命令为 ./configure --with-php-config=/usr/local/php/bin/php-config
make && make install
如果你的php不是编译的,那么phpize需要执行 yum install php-devel ,即安装devel版本的php
编译完成后你会得到
Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/
我们将其拷贝出来
cp /usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/redis.so /usr/local/php/lib/php/extensions/
开启redis扩展
类似 PHP安装memcached扩展,最后我们需要在php.ini中添加以下配置
vim /etc/php.ini
# add
[Redis]
extension=redis.so
重启Apache或php-fpm后,phpinfo页面
[...]body.custom-background { background-image: url('https://zhuticool.com/wp-content/themes/Git-master/css/img/bg.png'); background-repeat: repeat; background-position: top left; background-attachment: s[...]
不错
用的sqlite数据库,直接放内存里了。
博客用了你的插件,很好很强大。
也不错