昨天好不容易找到这篇文章把服务器的PHP和redis打通了,感谢这位小哥的无私分享,转载一下略表谢意
转自http://www.itnose.net/detail/6142703.html
最近Ubuntu11被玩坏了,因为装个php5-redis找不到安装包引起的问题,在segmentfault上提问(http://segmentfault.com/q/1010000000735952)也没有真正得到解决。
所以将系统换成最新的Ubuntu14,之前把环境什么都配置好了的,就连php5-redis都是安装好了的,但是因为昨晚上弹出作死的系统更新,手贱选择了几个软件更新,结果就,走在马路边~~~,不要轻易更新啊!
PS:在系统安装完后最好执行下列命令更新下软件
sudo apt-get update
实际上只要软件源没什么问题的话,安装什么软件都是OK的。
来开始安装redis吧~~
一:如果你的其他都OK的话,可以执行下列命令直接安装
sudo apt-get install redis-server
sudo apt-get install php5-redis
这样安装是理想的方式,也是最简便的方式
可是,人生不如意总有八九
比如什么找不到安装包啊、比如缺少什么依赖啊
那就要麻烦一点了
二:作死法,麻烦死,当然这就是Geek精神
1、安装redis服务
sudo apt-get install redis-server
安装完成后可以
ps aux | grep redis
查看redis服务是否启动
if (没有启动)
sudo service redis-server start
如果启动了然后可以
redis-cli
进入redis的命令行(127.0.0.1:6379: >就这样样子),这下你就可以尽情的玩了,可是不php结合起来你确定你能玩的很尽兴,还是耽搁几分钟来装个php扩展吧
2、安装php扩展
下载redis扩展:wget https://github.com/nicolasff/phpredis/zipball/master -O php-redis.zip
解压缩:unzip php-redis.zip
进入目录:cd php-redis
运行:phpize (ps:这个是php-dev下的编译扩展的工具,如果没有的话快点执行 sudo apt-get install php-dev安装)
运行配置文件以生成Makefile:./configure
生成共享库(比如redis.so):make
命令行会提示执行”make test”,虽然不是必须的,但小心驶得万年船啊~兄弟!!如果此处没有问题的话那我们继续
安装:make install
最后会得到提示已经将软件安装到了/usr/lib/php5/20121212/redis.so,这个安装的本质就是把我们之前生成的共享库文件拷贝过来,就这样。
等一下,可是,现在问题就来了,怎么让他和php结合起来呢,如果你会一丢丢php的话,你就应该测试下现在php-redis扩展是否在<?php phpinfo(); ?>生成的页面里是否显示redis扩展的情况,没有安装的话是没有的,呵呵。
这个配置挺麻烦的,不想CentOs等Linux下直接在php.ini的文件里加上extension=redis.so就行了,也不知道Ubuntu这样作死的设计不一样的apache环境是何居心啊,老夫已经在这里折腾过次了。哎。。。
首先在/etc/php5/mods-available/新建redis.ini文件,写入下列内容,至于为什么你可以参照同目录下的其他比如php-mysql扩展的情况
; configuration for php Redis module ; priority=20 extension=redis.so
简单吧,其实只是放的位置不一样,而且每个扩展的配置都被独立出来的
现在重启apache再重新加载刚才那个页面看看扩展有没有,不要怀疑,当然你没有,我当时也郁闷一下
然后在oschina上发现了他们的讨论,好像是要建立一个配置的文件的链接,像这样:
sudo ln -s /etc/php5/mods-available/redis.ini /etc/php5/apache2/conf.d/20-redis.ini
然后后面那个文件就链接到前面那个你刚才自己写的配置文件了,也可以
ls -a /etc/php5/apache2/conf.d/
能够看到该目录下的其他配置文件的链接,只是文件名上多那些东西,我也是模仿它们命名的。
现在重启apache,试试~~
什么,你不会重启,那合着我半天都白讲了是吧!你把下列命令倒过来执行就行了,你一天是有多么无聊啊!
tratser 2ehcapa ecivres odus
现在应该在phpinfo的页面看见了redis扩展的安装信息了。
话说这扩展版本才2.2.5,我的redis-server都是2.8.4了,这样真的好么,有新版本的童鞋告我一声地址)))
哎,都15点了,饿死了,你们慢慢玩吧,我去吃午饭了。。。
??对于抨击我用Ubuntu的Linuxer来说,我只想说,e就是喜欢Ubuntu那华丽丽的界面!有强迫症