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.ini
中extension_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
如果连不上那就是启动端口问题
- 上一篇: MySQL中的concat和trim
- 下一篇: Git merge合并分支的总结