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如果连不上那就是启动端口问题