浅析PHP安装扩展mcrypt以及相关依赖项(PHP安装PECL扩展的方法)


Posted in PHP onJuly 05, 2013

一:Mcrypt简介
Mcrypt是PHP的一个扩展,完成了常用加密算法的封装。其实该扩展是对mcrypt标准类库的封装,mcrypt完成了相当多的常用加密算法,如DES, TripleDES, Blowfish (default), 3-WAY, SAFER-SK64, SAFER-SK128, TWOFISH, TEA, RC2 和 GOST加密算法,并且提供了CBC、OFB、CFB 和 ECB 四种块加密的模型。

二:安装libmcrypt依赖库
要使用该扩展,必须首先安装mcrypt标准类库,注意的是mcrypt软件依赖libmcrypt和mhash两个库。
浅析PHP安装扩展mcrypt以及相关依赖项(PHP安装PECL扩展的方法)
1.下载Libmcrypt,mhash,mcrypt安装包
Libmcrypt(libmcrypt-2.5.8.tar.gz):点击链接
mcrypt(mcrypt-2.6.8.tar.gz ):点击链接
mhash(mhash-0.9.9.9.tar.gz):点击链接

2.先安装Libmcrypt
#tar -zxvf libmcrypt-2.5.8.tar.gz
#cd libmcrypt-2.5.8
#./configure
#make
#make install
说明:libmcript默认安装在/usr/local
安装完后重启机器

3.再安装mhash
#tar -zxvf mhash-0.9.9.9.tar.gz
#cd mhash-0.9.9.9
#./configure
#make
#make install

4.最后安装mcrypt
#tar -zxvf mcrypt-2.6.8.tar.gz
#cd mcrypt-2.6.8
#LD_LIBRARY_PATH=/usr/local/lib ./configure
#make
#make install
说明:由于在配置Mcrypt时,会找不到libmcrypt的链接库,导致无法编译,因为Libmcrypt的链接库在/usr/local/lib文件夹下。
因次,在配置mcrypt时要加入LD_LIBRARY_PATH=/usr/local/lib导入键接库。

三.安装PHP的Pecl扩展mcrypt
注意mcrypt是PHP自带的Pecl扩展,所以只要去PHP的解压缩目录去找mcrypt包即可。


1.动态加载
使用php的常见问题是:编译php时忘记添加某扩展,后来想添加扩展,但是因为安装php后又装了一些东西如PEAR等,不想重装整个PHP,于是可以采用动态编译,使用phpize。需要注意的是要有与现有php完全相同的php压缩包。
#cd /usr/php-5.4.8/ext/mcrypt
#/usr/local/webserver/php/bin/phpize
#./configure --with-php-config=/usr/local/webserver/php/bin/php-config
#make && make install
给你的php.ini添加一条extension=mcrypt.so

重启apache
# /usr/local/apache2/bin/apachectl restart
查看phpinfo(),mcrypt以及安装好浅析PHP安装扩展mcrypt以及相关依赖项(PHP安装PECL扩展的方法)
安装完成
--------------------------
2.静态编译
在任意PHP文件中加入函数 phpinfo(),即可取得目前PHP的配置
在这些配置后面新增需要加入的配置:--with-mcrypt --with-mhash
然后进入php源代码目录make clean(一定需要) ,然后执行这条完整的configure命令,依次

make
make install
根据你的需要加上所要的配置,例如:
./configure --with-apxs2=/usr/local/web/apache/bin/apxs --with-mcrypt --with-mhash
//./configure --with-apxs2=/usr/local/web/apache/bin/apxs --with-mcrypt --with-mhash --with-libxml-dir --enable-bcmath --enable-sockets
PHP 相关文章推荐
PHP 判断常量,变量和函数是否存在
Apr 26 PHP
深入HTTP响应状态码速查表的详解
Jun 07 PHP
使用dump函数,给php加断点测试
Jun 25 PHP
php使用百度翻译api示例分享
Jan 31 PHP
在PHP中使用X-SendFile头让文件下载更快
Jun 01 PHP
php实现将base64格式图片保存在指定目录的方法
Oct 13 PHP
PHP微信公众号开发之微信红包实现方法分析
Jul 14 PHP
php实现统计二进制中1的个数算法示例
Jan 23 PHP
PHP PDOStatement::execute讲解
Jan 31 PHP
PHP PDOStatement::nextRowset讲解
Feb 01 PHP
Laravel-添加后台模板AdminLte的实现方法
Oct 08 PHP
PHP设计模式(观察者模式)
Jul 07 PHP
PHP仿博客园 个人博客(2) 数据库增添改删
Jul 05 #PHP
浅析PHP的ASCII码转换类
Jul 05 #PHP
PHP仿博客园 个人博客(1) 数据库与界面设计
Jul 05 #PHP
PHP cdata 处理(详细介绍)
Jul 05 #PHP
PHP的基本常识小结
Jul 05 #PHP
深入解析fsockopen与pfsockopen的区别
Jul 05 #PHP
在windows平台上构建自己的PHP实现方法(仅适用于php5.2)
Jul 05 #PHP
You might like
一段防盗连的PHP代码
2006/12/06 PHP
php设计模式 Proxy (代理模式)
2011/06/26 PHP
PHP模拟asp.net的StringBuilder类实现方法
2015/08/08 PHP
PHP实现将优酷土豆腾讯视频html地址转换成flash swf地址的方法
2017/08/04 PHP
Laravel多域名下字段验证的方法
2019/04/04 PHP
js+FSO遍历文件夹下文件并显示
2007/03/07 Javascript
CSS JavaScript 实现菜单功能 改进版
2008/12/09 Javascript
jquery可见性过滤选择器使用示例
2013/06/24 Javascript
一个html5播放视频的video控件只支持android的默认格式mp4和3gp
2014/05/08 Javascript
javascript 原型链维护和继承详解
2014/11/26 Javascript
js前端实现多图图片上传预览的两个方法(推荐)
2016/11/18 Javascript
详解vue+vueRouter+webpack的简单实例
2017/06/17 Javascript
Js中async/await的执行顺序详解
2017/09/22 Javascript
微信小程序实现滚动消息通知
2018/02/02 Javascript
vue-cli与webpack处理静态资源的方法及webpack打包的坑
2018/05/15 Javascript
Vue cli构建及项目打包以及出现的问题解决
2018/08/27 Javascript
记一次webapck4 配置文件无效的解决历程
2018/09/19 Javascript
深入理解js A*寻路算法原理与具体实现过程
2018/12/13 Javascript
[02:20]DOTA2亚洲邀请赛 EHOME战队出场宣传片
2015/02/07 DOTA
python获取指定目录下所有文件名列表的方法
2015/05/20 Python
Python字符串处理实例详解
2017/05/18 Python
python selenium 获取标签的属性值、内容、状态方法
2018/06/22 Python
pycharm+PyQt5+python最新开发环境配置(踩坑)
2019/02/11 Python
python3.6使用tkinter实现弹跳小球游戏
2019/05/09 Python
Python语法之精妙的十个知识点(装B语法)
2020/01/18 Python
python上selenium的弹框操作实现
2020/07/13 Python
详解canvas绘制网络字体几种方法
2019/08/27 HTML / CSS
越南电子产品购物网站:FPT Shop
2017/12/02 全球购物
Vrbo西班牙:预订您的度假公寓(公寓、乡村房屋…)
2020/04/27 全球购物
什么是JNDI的上下文?如何初始化JNDI上下文
2012/03/10 面试题
教师节商场活动方案
2014/02/13 职场文书
《三峡》教学反思
2014/03/01 职场文书
质量月活动策划方案
2014/03/10 职场文书
学生干部培训方案
2014/06/12 职场文书
廉洁自律承诺书2016
2016/03/25 职场文书
Java org.w3c.dom.Document 类方法引用报错
2021/08/07 Java/Android