发布于 2014-12-19 11:48:56 | 667 次阅读 | 评论: 0 | 来源: PHPERZ
Redis Key-Value数据库
Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。
本文为大家讲解的是ubuntu下安装配置 php + nginx + redis环境教程,感兴趣的同学参考下。
PHP(外文名: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,入门门槛较低,易于学习,使用广泛,主要适用于Web开发领域。PHP的文件后缀名为php。
Nginx 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器。 Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,第一个公开版本0.1.0发布于2004年10月4日。其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。
Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。
我使用的版本是: ubuntu版本: 14.04
sudo apt-get nginx
启动nginx,用apt-get安装的话都是配置好启动脚本的
/etc/init.d/nginx start
sudo apt-get install php5-cli php5-cgi php5-fpm php5-mcrypt php5-mysql
修改nginx配置
sudo vi /etc/nginx/sites-available/default
在配置文件中把下面的配置前面的#去掉
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi _index index.php;
include fastcgi_params;
}
修改指定文件路径,我的服务器上只是放了一个应用,偷懒,直接用root了
修改sudo vi /etc/nginx/sites-available/default中的root 你的文件夹
PS: 以上只是我自己的配置,其实要配置一台安全的服务器还是有比较多东西要做的,鉴于网上的资料已经泛滥了,所以我就写条主线出来,详细配置看个人需求。这里 我主要重点还是讲Redis还有PHP,因为PHP官方是支持mongo而不支持redis,所以我就讲一下配置和使用。
sudo apt-get install redis-server
这没问题,BUT。我需要的是比较新的Redis,因为要用到 EXPIRE 特性,在 Redis 2.1.3 之前的版本中,修改一个带有生存时间的 key 会导致整个 key 被删除,这一行为是受当时复制(replication)层的限制而作出的,现在这一限制已经被修复。在 Redis 2.4 版本中,过期时间的延迟在 1 秒钟之内 —— 也即是,就算 key 已经过期,但它还是可能在过期之后一秒钟之内被访问到,而在新的 Redis 2.6 版本中,延迟被降低到 1 毫秒之内。
所以我查看了一下我Redis的版本
redis-cli --version
输出
redis-cli 2.2.12
好吧,这版本有点老。
于是我更新了下apt-get源
sudo add-apt-repository ppa:chris-lea/redis-server
但是,报了以下错误
sudo: add-apt-repository: command not found
........!!!
确实,的确,少了点什么
执行
sudo apt-get install software-properties-common python-software-properties
就可以啦!PS:不一定会遇到这个问题,有一些版本的Ubuntu是精简过的,我建议大家是在ubuntu官网下载。
记得别忘了执行
sudo apt-get update
然后再运行刚才的命令
搞定,成功添加了更新源。接下来卸载刚才安装的老版本
sudo apt-get remove redis-server
再次用apt-get安装redis,这次是2.8.12的最新版本啦
把基础环境搞定,接下来是安装拓展啦。
phpredis 的github地址:
https://github.com/nicolasff/phpredis
然后配制。编译,安装。先切换到下载的phpredis文件夹
然后
phpize(如果提示出错的话, 执行 apt-get install php5-dev ) ./configure make make install
然后在php.ini 加上 extension = redis.so
或
在 /etc/php5/conf.d 中建立一个redis.ini的文件 ,内容为 extension=redis.so
搞定收工。建立一个页面输入
phpinfo();
看看有没有Redis这项。
现在重启fpm 和 nginx。 或着直接sudo reboot。