• Memcached 笔记与总结(2)编译 php-memcache 扩展


    环境:CentOS 6.6 + Apache 2.2.21 + PHP 5.3.10

    php-memcache 是 php 写的 memcached 的客户端,以扩展的形式发布。

    对于正在运行的 php,不可能去整体重新编译 php,只能编译扩展。

    php 扩展编译(的 通用 方法,以 memcached 扩展为例)

    ① 到软件的官方网站,如 memcached 的官网,或 pecl.php.net 寻找扩展源码并下载,以 pecl.php.net 为例,搜索 memcached

    以 memcache 为例,下载其稳定版 2.2.7:http://pecl.php.net/get/memcache-2.2.7.tgz,使用 wget 命令下载或者 ftp 上传到 /usr/local/src 目录下;

    ② 解压

    [root@localhost src]# tar zxvf memcache-2.2.7.tgz 

    ③ 进入解压后的目录

    [root@localhost src]# cd memcache-2.2.7

    编译 php 扩展

    此时在 memcache-2.2.7 目录下并没有configure 文件。

    因为该软件编译的参数具体依赖于当前的 php 环境,所以首先需要根据 php 的版本动态地创建扩展的 configure 文件。

    [root@localhost memcache-2.2.7]# /usr/local/php/bin/phpize --with-php-config=/usr/local/php/bin/php-config

    此时再查看该目录,已经有了 configure 文件:

    ⑤ 配置

    [root@localhost memcache-2.2.7]# ./configure --with-php-config=/usr/local/php/bin/php-config

    ⑥ 编译 && 安装

    [root@localhost memcache-2.2.7]# make && make install

    生成的 .so 文件放在了如上图所示的目录中,查看该目录:

    ⑦ 把生成的 .so 扩展,在 php.ini 中引入

    通过测试文件打印出 phpinfo,查看 php.ini 的路径:

    编辑 php.ini:

    [root@localhost memcache-2.2.7]# vim /usr/local/php/lib/php.ini 

    在 line 800 左右加上:extension_dir 和 extension(redis.so 和 extension_dir 是以前就加入的):

    保存退出。

    重启 apache:

    [root@localhost memcache-2.2.7]# /usr/local/apache2/bin/apachectl restart

    此时在查看 phpinfo:

     或者在 linux 下输入命令:

    php -m | grep memcached
  • 相关阅读:
    今天英语有何新收获?
    今天了解了解了外包这一行业
    今天英语有何新收获?
    sicp 练习1.7
    今天英语有何新收获
    今天英语有何新收获?
    反射(初尝)
    初学正则表达式
    sicp 练习1.8 【有点疑惑】
    [tip]Windows filename MAX_PATH limitation
  • 原文地址:https://www.cnblogs.com/dee0912/p/4790436.html
Copyright © 2020-2023  润新知