开发者社区 问答 正文

CentOS环境PHP安装memcache扩展

(有什么问题欢迎指教,企鹅:2172243813 更多资讯尽在通天源码论坛)

首先需要说明的是,memcache与memcached的区别,memcache是客户端的扩展,memcached是服务端。

1、安装libmemcached库
<div id="sina_keyword_ad_area2" newfont_family"="">
[ root@blog.phpha.com] yum install libmemcached

2、PHP安装Memcache扩展

[ root@blog.phpha.com] wget -chttp://pecl.php.net/get/memcache-3.0.8.tgz
[ root@blog.phpha.com] tar -zxvf memcache-3.0.8.tgz
[ root@blog.phpha.com] cd memcache-3.0.8
[ root@blog.phpha.com] /usr/local/php/bin/phpize
[ root@blog.phpha.com] ./configure --with-php-config=/usr/local/php/bin/php-config --enable-memcache--with-zlib-dir
[ root@blog.phpha.com] make && make install
/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/memcache.so
[ root@blog.phpha.com] vim /usr/local/php/etc/php.ini
extension =/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/memcache.so
session.save_handler = memcache
session.save_path = "tcp://127.0.0.100:11211"
[ root@blog.phpha.com] service php-fpm reload

补充:本文介绍的是PHP的Memcache扩展的安装,也就是说客户端的安装。安装后发现一个问题,SESSION丢失,想到了安装Memcached服务端的时候,防火墙没有添加11211端口,修改防火墙规则后,一切正常。
<div newfont_family"="">
<div newfont_family"="">本文来自苦逼IT小子的新浪博客

展开
收起
通天技术 2017-09-20 15:59:18 2904 分享 版权
阿里云 AI 助理回答

您提到的流程是关于在Linux系统中手动编译安装Memcache PHP扩展的过程。这个过程涉及几个关键步骤,我来为您简要解析一下,并补充一些可能遇到的问题和解决思路。

1. 安装libmemcached库

yum install libmemcached 命令用于安装libmemcached库,这是一个C语言编写的客户端库,用于与Memcached服务器通信。确保您的系统支持YUM包管理器,并且网络连接畅通以便下载安装包。

2. PHP安装Memcache扩展

下载扩展

  • 使用wget命令从PECL下载Memcache扩展源码包。请注意,URL中的版本号(如3.0.8)可能会随时间变化,建议访问PECL官网查找最新稳定版的下载链接。

编译准备

  • phpize命令用于准备编译PHP扩展所需的环境。它会检查当前目录是否有构建扩展所需的所有工具和配置文件。确保您的系统中已正确安装了PHP开发环境,包括php-devel包。

配置与编译

  • ./configure命令用于配置编译选项,这里指定了PHP配置文件路径以及启用了zlib支持(通过--with-zlib-dir)。请根据实际情况调整路径。
  • 如果过程中遇到依赖问题,比如缺少其他开发库,需要先安装相应的开发包(通常以-devel结尾)。

编译与安装

  • make命令编译源代码。
  • 成功编译后,使用make install将扩展安装到PHP的扩展目录中。注意,这一步可能需要root权限。

启用扩展

安装完成后,您还需要在PHP配置文件(通常是php.ini)中启用此扩展。添加一行:

extension=memcache.so

然后重启web服务器(如Apache或Nginx搭配PHP-FPM)使改动生效。

验证安装

可以通过运行php -m | grep memcache或者创建一个包含phpinfo();的PHP文件来检查Memcache扩展是否成功加载。

注意事项

  • Memcache扩展已经不再积极维护,考虑使用更新、功能更全的Memcached扩展替代。
  • 在阿里云环境中,如果您使用的是ECS实例,上述步骤同样适用,但推荐使用云市场的镜像或一键部署方案,这样可以简化安装和配置过程。
  • 对于不熟悉Linux系统管理和PHP编译的用户,建议使用云服务提供商提供的集成环境或软件包管理工具(如Composer)来安装和管理PHP扩展,以减少复杂性和出错概率。
有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答