设为首页 收藏本站
查看: 808|回复: 0

[经验分享] 在Mac OS X中完善PHP环境:memcache、mcrypt、igbinary

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-8-25 15:17:25 | 显示全部楼层 |阅读模式
本文环境:
Mac OS X 10.8.5
Xcode 5.0
  Mac OS X升级到10.8.5之后,内置的Apache升级到2.2.24,PHP升级到了5.3.26。本文以此环境为基础。
  本文简介安装memcache、mcrypt、igbinary。
  一、首先准备Xcode和autoconf。
  安装的过程需要Xcode的命令行工具,编译PHP扩展需要有autoconf。
  Xcode是苹果公司提供的免费开发工具,请从App Store中搜索安装。完成安装之后,请通过Xcode的菜单【Xcode】-【Preferences...】打开对话框并切换到【Downloads】页,下载Command Line Tools。
  autoconf请从如下地址下载:



http://ftp.gnu.org/gnu/autoconf/


提醒:
本文涉及的所有下载和编译安装,建议把源代码存放到路径不存在空格(和其他特殊符号)的位置,以避免执行make install时发生意外。
  解压并进入autoconf目录,依次执行如下命令:



./configure
make
sudo make install
  二、安装memcache
  memcached是一套高性能的内存对象缓存系统。在PHP中,有两套扩展可以用来支持memcached。其中一套是原生的扩展,称为“memcache”,下面介绍的就是这个扩展。还有另外一个套扩展是基于libmemcached库的,功能更强一些。
    10.8的mac中,可以在/usr/bin/路径下找到memcached这个文件,/System/Library/LaunchDaemons/路径下还有个com.danga.memcached.plist文件。打开com.danga.memcached.plist文件,删除掉如下两行:



1 <key>Disable</key>
2 <true/>
  保存文件之后重新启动,打开终端执行:



1 #memcached的默认端口为11211
2 telnet 127.0.0.1 11211
3 #stats命令显示memcached的各种状态信息
4 stats
5 #quit退出与memcached的连接
6 quit
  如果一切正常,开始安装memcache的PHP扩展。请从如下地址下载:



http://pecl.php.net/package/memcache
  解包下载的文件之后进入文件目录,请依次执行如下命令:



phpize
./configure
make
sudo make install
  如果看到如下结果:



Installing shared extensions:     /usr/lib/php/extensions/no-debug-non-zts-20090626/
  说明安装正常,接下去打开/etc/php.ini文件,添加如下行:



1 extension=memcache.so
  重启apache之后,看一下phpinfo结果:
DSC0000.png
  三、安装mcrypt
  Mcrypt是一个功能强大的加密算法扩展库,它持20多种加密算法和8种加密模式。Mac OS X中,需要先安装这个库然后再安装PHP扩展。
    首先是下载扩展库的源文件,下载地址在这里:



http://sourceforge.net/projects/mcrypt/files/Libmcrypt/2.5.8/
  下载到本地之后,解压缩,进入目录,请依次执行如下命令:



./configure --disable-posix-threads --enable-static
make
sudo make install
  安装好扩展库之后,请下载PHP的源代码。Mac OS X 10.8.5中的PHP是5.3.26版本的,下载地址如下(如果您的PHP版本不同,请自行下载相应版本的代码):



http://cn2.php.net/get/php-5.3.26.tar.bz2/from/a/mirror
  完成下载之后,请解包进入代码目录,再cd ext/mcrypt/,然后依次执行如下命令:



phpize
./configure
make
sudo make install
  正确完成安装之后,请编辑/etc/php.ini文件,加入如下配置行:



1 extension=mcrypt.so
  很熟悉是不是?重启apache之后,再次用phpinfo进行检查:
DSC0001.png
  四、安装igbinary
  用igbinary实现序列化和反序列化,效率更高,占用的字节数更少,性能远远高于PHP自带的序列化功能。有两个下载地址:



#PECL官方的地址,这里提供1.1.1版本(稳定版)下载
http://pecl.php.net/package/igbinary
#另外一个地址,提供1.1.2版本(开发版)下载
https://nodeload.github.com/phadej/igbinary/zip/master
  下载之后,依旧是很熟悉的路数:解包、进入目录,下列命令步骤:



phpize
./configure
make
sudo make install
  编辑/etc/php.ini添加如下配置行:



1 extension=igbinary.so
  重启apache,检查一下效果:
DSC0002.png
  可以改动一下PHP的如下配置行:session.serialize_handler = php,修改成:



1 session.serialize_handler = igbinary
  另外,推荐一篇关于igbinary性能测试的文章:



http://www.ooso.net/archives/538
  
  好了,就这些。



总结博客的过程,就是重新学习的过程。
感谢如下网友:
秦歌、yifangyou、Volcano
还有其他共享知识于网络的朋友

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-104155-1-1.html 上篇帖子: PHP函数常用用法 下篇帖子: Guzzle – 构建 RESTful Web 服务的 PHP HTTP 框架
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表