标签 memcache 下的文章

XAMPP安装memcache扩展的总结

先说点破事


  • 首先XAMPP是个不错的lampp集成包,安装和卸载方便,只需要解压和删除安装目录即可,快速便捷
  • 之前用的xampp包怎么也装不上扩展(xdebug),网上有朋友说因为没有装develop开发套件,我弄了个develop套件解压进去还是不行,苦恼了好一阵,忍忍就没再搞了
  • 上周又一次用到了memecache,这次不搞不行了,也决心把本地环境搞好,遂有了下面的曲折历程,记录之,由于过程波折可能会有点絮叨,见谅
  • 本机环境ubuntu12.04

XAMPP安装


  • 官网 https://www.apachefriends.org/zh_cn/index.html
  • 第一次安装的是1.7版本的tar包,不带develop开发套件,这一次是重新下载最新版的xampp-linux-5.5.19-0-installer.run,备注:.run文件安装需要先把文件权限调整为允许以程序执行文件,直接给777也行,具体可自行百度

开始memcache安装


参照 http://www.ccvita.com/257.html做的改动,感谢原博主

  • 安装memcache
sudo apt-get install memcache
  • 安装memcache的php扩展,通过编译方式安装,下载memcache的php扩展包,下载链接

    • 网上也有说通过sudo apt-get install php5-memcache安装,这里可能会和ubuntu自带的环境冲突,关联不到xampp上
  • 进入memcache的目录
tar vxzf memcache-2.2.1.tgz
cd memcache-2.2.1
/opt/lampp/bin/phpize
./configure --enable-memcache --with-php-config=/opt/lampp/bin/php-config --with-zlib-dir
make
make install
  • 重启apache,启动memcache
memcached -d -m 200 -u root -p 11211
  • 查看 /opt/lampp/bin/php -m 如果有memcache基本就成了,php如果连不上那就是启动端口问题

遇到的问题:


  • phpize根据你自己xampp安装的实际路径

configure报错


  • 开始按原文./configure --enable-memcache --with-php-config=/usr/local/php/bin/php-config --with-zlib-dir
  • 报错configure: error: Cannot find php-config. Please use --with-php-config=PATH
  • 我傻傻的跑了下./configure --enable-memcache --with-php-config=PATH
  • 再报错configure: error: Cannot find php-config. Please use --with-php-config=PATH
  • 我意识到PATH,参照原文的/usr/local/php/bin/php-config,知道了问题出在php-config
  • 直接去xampp的安装目录中搜索对应的php-config,然后获取路径换上

make install报错


  • 报错信息
cp: cannot create regular file `/opt/lampp/lib/php/extensions/no-debug-non-zts-20121212/    #INST@12000#': Permission denied
make: *** [install-modules] 错误 1
  • 干掉之前调试时的所有memcache进程
  • 干掉/opt/lampp/bin/php/extensions/no-debug-XXX/中之前复制过的memcache.so文件
  • 重点:把刚刚那个编译目录中的memcache.so拿过来放进去
sudo cp ~/memcache-2.2.7/modules/memcache.so  /opt/lampp/lib/php/extensions/no-debug-non-zts-20121212/
  • 在php.ini中添加memcache.so
  • 貌似无所谓修改php.iniextension_dir,这个目录是根据自己的真实目录
extension_dir = "/opt/lampp/lib/php/extensions/no-debug-non-zts-20121212/"
  • 再重启apache,启动memcache,启动命令 memcached -d -m 200 -u root -p 11211
  • 再查看 /opt/lampp/bin/php -m 如果有memcache基本就成了,php如果连不上那就是启动端口问题