1设置路径及redis扩充安装
分类:计算机编程

  1. Ubuntu16.04上使用sudo apt-get install php7.1 安装php的默认路径如下:

PS:在系统安装完后最好执行下列命令更新下软件

2017-12-03

安装phpredis扩展

  • 1、下载phpredis扩展:wget

http://pecl.php.net/get/redis-3.1.1.tgz;

  • 2、解压redis-3.1.1.tgz文件,cd到该目录;
    找到本地的phpize位置,并在redis-3.1.1文件目录下执行sudo /usr/bin/phpize(生成configure等文件);
![](https://upload-images.jianshu.io/upload_images/4857690-34aac6adb3420b56.png)

image.png
  • 3、找到php-config的位置,并在redis-3.1.1目录下执行:sudo ./configure --with-php-config=/usr/bin/php-config
![](https://upload-images.jianshu.io/upload_images/4857690-94d5904d5234d6ba.png)

image.png
  • 4、执行sudo make
    若出现如下错误,可能下载的phpredis版本较低,重新下载一个高版本的进行安装;
![](https://upload-images.jianshu.io/upload_images/4857690-27c3a778acb929d9.png)

image.png
  • 5、出现如下结果表示安装成功;
![](https://upload-images.jianshu.io/upload_images/4857690-bd7d73506ac88094.png)

image.png
  • 6、执行sudo make test
    执行 sudo make install
![](https://upload-images.jianshu.io/upload_images/4857690-d6cb3e4bf8af495c.png)

image.png



redis.so安装目录,可以查看是否安装成功;
  • 7、找到本地环境所用的php.ini文件,添加extension = redis.so
![](https://upload-images.jianshu.io/upload_images/4857690-8d2f2bfc0e0a08dc.png)

image.png
  • 8、重启apache服务器
    sudo /etc/init.d/apache restart
  • 9、在web根目录下新建一个一个test.php文件,通过phpinfo()查看redis扩展安装成功;
![](https://upload-images.jianshu.io/upload_images/4857690-31905435db3fe4b5.png)

image.png

  a. php可执行命令:/usr/bin/php7.1  和 /usr/bin/php

sudo apt-get update

一、安装php的swoole扩展

1、下载扩展包

①、通过php官方提供的命令pecl一键下载:pecl install swoole;(此法未尝试过)

②、在github上下载:wget -c

2、到/usr/local/src目录下

命令:cd  /usr/local/src

执行步骤1中的方法②,下/usr/local/src下下载swoole扩展包

3、解压包并保存包到另一个文件里

解压:tar xvf v1.9.8.tar.gz

另存为:mv v1.9.8.tar.gz swoole-v1.9.8.tar.gz

4、安装php-dev

sudo apt install php7.2-dev

安装成功后执行以下命令:

sudo phpize

sudo ./configure

sudo make

sudo make test

sudo make install

5、查看php所有的扩展插件

ls /usr/lib/php/20170718/      无swoole.so扩展文件;然后用php -m | grep swoole命令查找php的所有扩展

6、安装后的php目录的操作

ls /etc/php/7.2/

sudo make clean

cd /etc/php/7.2/

ls 

sudo find /etc -type f -name "php.ini"

sudo vi /etc/php/7.2/cli/php.ini (只是查看了里面的内容,并没有做任何动作)

cd /etc/php/7.2/mods-available (来到此目录下)

sudo cp pdo.ini swoole.ini(重命名pdo.ini文件),并编辑swoole.ini文件,修改成extension=swoole.so

cd ../ 回到上级目录(即/etc/php/7.2)

ls -l cli/conf.d/ (查看此目录下的相关文档)

sudo ln -s /etc/php/7.2/mods-available/swoole.ini    cli/conf.d/20-swoole.ini (创建swoole.ini的软链接)

sudo ln -s /etc/php/7.2/mods-available/swoole.ini    apache2/conf.d/20-swoole.ini (在/etc/php/7.2/apache2/conf.d/下创建软链接)

php -m | gerp swoole (查看swoole扩展)

sudo systemctl restart apache2.service (重启apache2)

二、安装redis扩展

1、一般安装redis扩展不需要像安装swoole扩展一样,需要创建很多软链接。安装时已经给你做好了,若没有给你做好,步骤就和swoole差不多

  b. 需要安装sudo apt install php7.1-dev 才会有 /usr/bin/phpize,和/usr/bin/php-config。后面安装扩展时会用到。

实际上只要软件源没什么问题的话,安装什么软件都是OK的。

  c. .so文件路径:/usr/lib/php/20160303,这个可以从phpinfo()中看到

来开始安装Redis吧~~

  d. php的*.ini配置文件目录:/etc/php/7.1/ 下有三个目录

一:如果你的其他都OK的话,可以执行下列命令直接安装

  图片 1

sudo apt-get install redis-server

   mods-available目录存放各种可加载的php扩展的ini配置,后面安装redis扩展后,就要在这里添加redis.ini文件

sudo apt-get install php5-redis

   cli/conf.d 目录存放的是php在命令行模式下已加载的扩展,文件名如:20-redis.ini

这样安装是理想的方式,也是最简便的方式

   apache2/conf.d 目录存放的是web模式下已加载的扩展,文件名如:10-pdo.ini  这个可以从phpinfo()里面看到加载的各种ini文件的路径

可是,人生不如意总有八九

   cli/conf.d和apache2/conf.d目录下的 n-###.ini 都不需要创建,直接从mods-available软链接得来。文件名中的数字表示优先级

比如什么找不到安装包啊、比如缺少什么依赖啊

  1. 安装php的redis扩展:

那就要麻烦一点了

  a. 官网地址

二:作死法,麻烦死,当然这就是Geek精神

  图片 2

1、安装redis服务

  b. 在ubuntu中使用wget  , 下载到当前目录

sudo apt-get install redis-server

  c. tar -zxvf redis-4.0.1.tgz解压到当前目录

一般情况下上面redis-server是能够正确安装的,我反正就是这样安装上的。

  d. cd redis-4.0.1

如果是在不行就可以参照oschina上的这篇

  e. 执行phpize (如果没有此命令请查看第一节的b项)

安装完成后可以

  f. ./configure --with-php-config=/usr/bin/php-config

ps aux | grep redis

  g. make

查看redis服务是否启动

  h. make install

if (没有启动)

  此时redis.so文件已自动加入到/usr/lib/php/20160303目录下

sudo service redis-server start

  i. 在/etc/php/7.1/mods-available目录下创建redis.ini文件,写入一行extension=redis.so

如果启动了然后可以

  j. 创建软链接 sudo ln -s /etc/php/7.1/mods-available/redis.ini /etc/php/7.1/cli/conf.d/20-redis.ini ,此时/etc/php/7.1/cli/conf.d目录下就有20-redis.ini文件

redis-cli

  k.创建软链接 sudo ln -s /etc/php/7.1/mods-available/redis.ini /etc/php/7.1/apache2/conf.d/20-redis.ini , 此时/etc/php/7.1/apache2/conf.d目录下就有20-redis.ini文件

进入redis的命令行(127.0.0.1:6379: >就这样样子),这下你就可以尽情的玩了,可是不PHP结合起来你确定你能玩的很尽兴,还是耽搁几分钟来装个php扩展吧

  l. 重启apache:sudo /etc/init.d/apache2 restart

2、安装php扩展

  m. 此时刷新phpinfo页就能看到redis扩展已经加载了

下载redis扩展:wget -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扩展是否在生成的页面里是否显示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扩展的安装信息了。

本文由pc28.am发布于计算机编程,转载请注明出处:1设置路径及redis扩充安装

上一篇:python输入输出,python基本常识 下一篇:没有了
猜你喜欢
热门排行
精彩图文