• 安装好的php独立添加扩展模块


    在装好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成功,再次查询已装模块

  • 相关阅读:
    【转】深入浅出单实例SINGLETON设计模式
    【转】bat等大公司常考java多线程面试题
    java递归逆置一个字符串
    求连续数组子序咧的最大和
    小程序new Date()).getMonth()拿到的月份比实际时间少一个月
    小程序云函数查询数据库时result一直为null
    小程序云开发使用where查询遇到的问题
    小程序运行报错: navigateTo:fail page "pages/navigate/navigate" is not found?
    在Thinkphp中使用AJAX实现无刷新分页
    MYSQL优化9大法!
  • 原文地址:https://www.cnblogs.com/chy-op/p/9656380.html
Copyright © 2020-2023  润新知