在装好php后,或者在使用php的时候,发现某个模块没有添加,而又不想重新编译安装,这时就需要单独添加扩展模块。

php环境说明:

安装路径:/data/php5.6/

解压路径:/data/php-5.6.38/

系统:ubuntu

1.php的启动和关闭

#/data/php5.6/sbin/php-fpm

#PID=`ps -ef | grep php | grep master | awk '{print $2}'`

#kill -s QUIT ${PID}

2.查看已装好的模块

#/data/php5.6/sbin/php-fpm -m

3.首先进入php解压后源目录下ext目录

4.这里举例添加一个bz2模块,进入ext下的bz2目录里,可以看到其目录下并无可执行文件configure

5.进入模块目录下后,执行phpize命令,为其生成用来编译的一些文件

若是首次添加模块,可能会报缺少autoconf的错,只需要执行 apt-get install autoconf 安装即可

6.在当前目录下执行configure

# ./configure --with-php-config=/data/php5.6/bin/php-config

但是报错

7.没有安装bzip2和bzip2-devel,接着apt执行安装

但是竟然说找不到bzip2-devel这个软件包

网上搜了一下,bzip2在Ubuntu里面真正的包名是libbz2-dev,就直接安装这个了

8.接着再一次执行configure,若无error字眼,那就执行make和install

#make

#make install

这个目录很关键,大概就是存放扩展的模块文件的地方

9.修改php.ini文件(此步不正确)

#vi /data/php5.6/php.ini

其中,去掉扩展模块的注释,将extension=php_bz2.dll前的;去掉

10.重启php,但是启动的时候竟然报错

报错是说在某个目录下的某个文件,不能打开,是找不到文件。这个目录就是存放扩展模块文件的目录(A),,这文件名是刚才php.ini里配置的,那意思就是在php.ini里extension的模块名要在(A)目录里面存在,而bz2模块在(A)目录里的文件名是bz2.so

11.再次重回php.ini修改

启动php成功,再次查询已装模块

安装好的php独立添加扩展模块的更多相关文章

  1. Ubuntu下安装LNMP之独立添加php扩展模块

    使用php的过程中,发现某个扩展没有添加,又不想重新编译php,这个时候我们就需要单独添加需要的扩展模块. 下面以mysqli扩展模块为例,具体介绍安装步骤. 1.安装mysql 具体参考:Ubunt ...

  2. 试用vSphere 6(三):安装vCenter 6(独立数据库)之:vCenter安装与配置

    ------------------------------------------ 一.VMware vSphere 6(RC版)安装配置系列文章: 1.试用vSphere 6(一):安装ESXi ...

  3. 已经安装php后,再增加扩展模块(不重新编辑php)

    下面以安装curl为例,介绍具体安装步骤. 1.安装crul wget http://curl.haxx.se/download/curl-7.19.6.tar.gz tar -zxvf curl-7 ...

  4. php添加扩展模块swoole

    php添加扩展模块swoole 应开发同事要求,需要安装php的扩展模块swoole.swoole是一种PHP高级Web开发框架,框架不是为了提升网站的性能,而是为了提升网站的开发效率,以最少的性能损 ...

  5. WIN764位主机的虚拟机安装的xp系统串口添加

    WIN764位主机的虚拟机安装的xp系统串口添加 我的电脑安装的是64位的WIN7系统,今天为了验证一个问题,需要用到6410开发板,但在安装USB驱动时无法成功安装,估计是S3C6410的USB驱动 ...

  6. deepin安装Oracle jdk8,以及添加add-apt-repository命令支持

    @font-face{ font-family:"Times New Roman"; } @font-face{ font-family:"宋体"; } p.M ...

  7. Win7 在安装vs2010后向sql2008添加SQL_Server_Management详解

    VS2010自带sql server 2008,但自带的版本缺少SQL_Server_Management,解决如下: 安装的先决条件: 1.SQLManagementStudio_x86_CHS(h ...

  8. Pycharm在线/手动离线安装第三方库-以scapy为例(本地离线添加已经安装的第三方库通过添加Path实现)

    在线安装运行Pycharm,打开需要添加scapy文件的项目,以TestScapy为例           点击工具栏的File选项,选中Settings,单击打开                  ...

  9. centos6.9安装python3.6.9独立的virtualenv环境,并且能正确引入ssl

    centos6.9安装python3.6.9独立的virtualenv环境,并且能正确引入ssl 1.编译安装python3.6环境# 安装依赖yum -y install zlib-devel bz ...

随机推荐

  1. 用 Java 抓取优酷、土豆等视频

    1. [代码][JavaScript]代码  import org.jsoup.Jsoup;import org.jsoup.nodes.Document;import org.jsoup.nodes ...

  2. 组合数学中的常见定理&组合数的计算&取模

    组合数的性质: C(n,m)=C(n,n-m); C(n,m)=n!/(m!(n-m)!); 组合数的递推公式: C(n,m)=  C(n-1,m-1)+C(n-1,m); 组合数一般数值较大,题目会 ...

  3. codevs 2102 石子归并2

    传送门 2102 石子归并 2  时间限制: 10 s  空间限制: 256000 KB  题目等级 : 黄金 Gold   题目描述 Description 在一个园形操场的四周摆放N堆石子,现要将 ...

  4. IntelliJ IDEA 2018 设置代码提示对大小写不敏感

    setting->Editor->General->Code Completion取消勾选Match case

  5. 洛谷 P3803 多项式乘法(FFT) —— FFT

    题目:https://www.luogu.org/problemnew/show/P3803 终于学了FFT了! 参考博客:https://www.cnblogs.com/zwfymqz/p/8244 ...

  6. SKINTOOL 系统不能正常运行

    1..net安装 2.Microsoft Visual C++ Redistributable Package  运行库

  7. JAVA 内部类 (二)

    一.为什么要使用内部类 为什么要使用内部类?在<Think in java>中有这样一句话:使用内部类最吸引人的原因是:每个内部类都能独立地继承一个(接口的)实现,所以无论外围类是否已经继 ...

  8. PID736(rqnoj)

    题目描述 n个小伙伴(编号从 0 到 n-1)围坐一圈玩游戏.按照顺时针方向给 n个位置编号,从 0 到 n-1.最初,第 0 号小伙伴在第0号位置,第1号小伙伴在第1号位置,依此类推. 游戏规则如下 ...

  9. 双重检查锁实现单例(java)

    单例类在Java开发者中非常常用,但是它给初级开发者们造成了很多挑战.他们所面对的其中一个关键挑战是,怎样确保单例类的行为是单例?也就是说,无论任何原因,如何防止单例类有多个实例.在整个应用生命周期中 ...

  10. python os.system重定向stdout到变量 ,同时获取返回值

    Python执行系统命令的方法 os.system(),os.popen(),commands 最近在做那个测试框架的时候发现 Python 的另一个获得系统执行命令的返回值和输出的类. 最开始的时候 ...