浅析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 相关文章推荐
phpMyAdmin2.11.6安装配置方法
Aug 24 PHP
php 仿Comsenz安装效果代码打包提供下载
May 09 PHP
适用于php-5.2 的 php.ini 中文版[金步国翻译]
Apr 17 PHP
php 函数中使用static的说明
Jun 01 PHP
深入HTTP响应状态码速查表的详解
Jun 07 PHP
PHP 面向对象程序设计(oop)学习笔记 (二) - 静态变量的属性和方法及延迟绑定
Jun 12 PHP
PHP开发框架laravel安装与配置教程
Mar 13 PHP
PHP实现多级分类生成树的方法示例
Feb 07 PHP
PHP-FPM 的管理和配置详解
Feb 17 PHP
PHP如何实现阿里云短信sdk灵活应用在项目中的方法
Jun 14 PHP
浅析PHP反序列化中过滤函数使用不当导致的对象注入问题
Feb 15 PHP
PHP笛卡尔积实现原理及代码实例
Dec 09 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
IIS安装Apache伪静态插件的具体操作图文
2013/07/01 PHP
php二维数组排序详解
2013/11/06 PHP
PHP设计模式之迭代器模式
2016/06/17 PHP
PHP静态成员变量和非静态成员变量详解
2017/02/14 PHP
php封装的page分页类完整实例代码
2020/02/01 PHP
让广告代码不再影响你的网页加载速度
2006/07/07 Javascript
JQuery 遮罩层实现(mask)实现代码
2010/01/09 Javascript
JQuery Ajax 跨域访问的解决方案
2010/03/12 Javascript
firefox下frameset取不到值的解决方法
2010/09/06 Javascript
JavaScript中的对象与JSON
2015/07/03 Javascript
jQuery实现的fixedMenu下拉菜单效果代码
2015/08/24 Javascript
解决bootstrap导航栏navbar在IE8上存在缺陷的方法
2016/07/01 Javascript
jquery 正整数数字校验正则表达式
2017/01/10 Javascript
JsChart组件使用详解
2018/03/04 Javascript
使用Javascript简单计算器
2018/11/17 Javascript
mpvue开发音频类小程序踩坑和建议详解
2019/03/12 Javascript
Vue.js数字输入框组件使用方法详解
2019/10/19 Javascript
微信小程序关键字变色实现代码实例
2019/12/13 Javascript
js Math数学简单使用操作示例
2020/03/13 Javascript
[08:54]《一刀刀一天》之DOTA全时刻18:十九支奔赴西雅图队伍全部出炉
2014/06/04 DOTA
Python命名空间详解
2014/08/18 Python
python中使用ctypes调用so传参设置遇到的问题及解决方法
2019/06/19 Python
Pandas —— resample()重采样和asfreq()频度转换方式
2020/02/26 Python
Django中F函数的使用示例代码详解
2020/07/06 Python
沙特阿拉伯家用电器和电子产品购物网站:Sheta and Saif
2020/04/03 全球购物
日语专业个人求职信范文
2014/02/02 职场文书
端午节活动总结
2014/08/26 职场文书
婚前协议书范本两则
2014/10/16 职场文书
和谐家庭事迹材料
2014/12/20 职场文书
留学推荐信(中英文版)
2015/03/26 职场文书
2015年中学团委工作总结
2015/07/22 职场文书
财务年终工作总结大全
2019/06/20 职场文书
js之ajax文件上传
2021/05/13 Javascript
ObjectMapper 如何忽略字段大小写
2021/06/29 Java/Android
世界十大儿童漫画书排名,法国国宝漫画排第五,第二是轰动日本连环
2022/03/18 欧美动漫
Win11如何启用启动修复 ? Win11执行启动修复的三种方法
2022/04/08 数码科技