美文网首页我爱编程
PHP安装扩展模块

PHP安装扩展模块

作者: 石乐志的LK | 来源:发表于2017-08-22 11:06 被阅读0次

    有时候我们需要让php支持其他的一些模块,所以需要我们可以重新编译php,编译之前加上模块的配置参数,也可以直接编译出来一个单独的模块,我倾向于后者,不要重新安装php,比较方便。

    首先,明确一下这次安装的模块是Memcached模块


    Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据

    库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提供动态、

    数据库驱动网站的速度


    1. 下载memcache源码包

    php的扩展模块一般都放在/usr/local/php/ext/文件夹下,但是我们安装好以后,好像都没有,所以我们首先创建文件夹

    mkdir /usr/local/php/ext

    cd /usr/local/php/ext

    下载源码包

    wget http://pecl.php.net/get/memcache-2.2.3.tgz

    下面这一步的作用是借助php的phpize工具生成configure文件

    /usr/local/php/bin/phpize

    这一步是借助 php 的 phpize 工具生成 configure 文件。在这一步你可能会遇到一些错误,比如“Cannot find config.m4”,这是因为系统没有安装 m4 工具,使用 yum 安装 yum install -y m4。另外一个错误“Cannot find autoconf”,解决办法是, yum install -y autoconf。

    2. 然后执行编译配置、编译、安装

    在/usr/local/php/ext中执行

    ./configure && make && make install 

    然后我发现,在当前目录下生成了一个目录名叫modules,里面生成了一个文件memcache.so

    然后我们去看一下php的extension_dir的位置,我们就是要将模块放在这个文件夹下

    查看extension_dir的位置

    /usr/local/php/bin/php -i | grep extension_dir

    我看到的是以下配置

    extension_dir => /usr/local/php/lib/php/extensions/no-debug-non-zts-20131226

    所以我cd到相应的目录,查看了一下,里面竟然也生成了memcache.so模块,这样我们就不用移动模块了。但是要修改php.ini的配置

    vim /usr/local/php/etc/php.ini

    在大概889行的位置添加配置如下,但是记得要去掉前面的;注释符

    extension = memcache.so

    3. 测试

    /usr/local/php/bin/php -m

    可以看到列出的模块中有memcache模块

    4. 补充

    当然,我们也能更改extension_dir的目录位置

    vim /usr/local/php/etc/php.ini

    在大概736行的位置,设置extension_dir=.......

    保存后退出即可

    相关文章

      网友评论

        本文标题:PHP安装扩展模块

        本文链接:https://www.haomeiwen.com/subject/nnpkdxtx.html