浅析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 相关文章推荐
Search Engine Friendly的URL设计
Oct 09 PHP
模拟OICQ的实现思路和核心程序(二)
Oct 09 PHP
php array_flip() 删除数组重复元素
Jan 14 PHP
PHP学习笔记之三 数据库基本操作
Jan 17 PHP
PHP企业级应用之常见缓存技术篇
Jan 27 PHP
php产生随机数的两种方法实例代码 输出随机IP
Apr 08 PHP
解决nginx不支持thinkphp中pathinfo的问题
Jul 21 PHP
PHP实现XML与数据格式进行转换类实例
Jul 29 PHP
php基于CodeIgniter实现图片上传、剪切功能
May 14 PHP
php 使用mpdf实现指定字段配置字体样式的方法
Jul 29 PHP
PHP大文件及断点续传下载实现代码
Aug 18 PHP
让你的PHP,APACHE,NGINX支持大文件上传
Mar 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
Fatal error: session_start(): Failed to initialize storage module: files问题解决方法
2014/05/04 PHP
php解析xml方法实例详解
2015/05/12 PHP
PHP创建/删除/复制文件夹、文件
2016/05/03 PHP
Yii框架使用魔术方法实现跨文件调用功能示例
2017/05/20 PHP
Laravel 批量更新多条数据的示例
2017/11/27 PHP
如果文字过长,则将过长的部分变成省略号显示
2006/06/26 Javascript
Javascript MD4
2006/12/20 Javascript
jQuery实现点击文本框弹出热门标签的提示效果
2013/11/17 Javascript
页面加载完成后再执行JS的jquery写法以及区别说明
2014/02/22 Javascript
关于javascript模块加载技术的一些思考
2014/11/28 Javascript
JavaScript中的条件判断语句使用详解
2015/06/03 Javascript
JavaScript原生对象常用方法总结(推荐)
2016/05/13 Javascript
Bootstrap按钮功能之查询按钮和重置按钮
2016/10/26 Javascript
IE8兼容Jquery.validate.js的问题
2016/12/01 Javascript
ES6中Proxy代理用法实例浅析
2017/04/06 Javascript
ionic3 懒加载
2017/08/16 Javascript
JavaScript实现构造json数组的方法分析
2018/08/17 Javascript
ng-repeat指令在迭代对象时的去重方法
2018/10/02 Javascript
JS面试题大坑之隐式类型转换实例代码
2018/10/14 Javascript
JS/jQuery实现超简单的Table表格添加,删除行功能示例
2019/07/31 jQuery
解决Vue.js应用回退或刷新界面时提示用户保存修改问题
2019/11/24 Javascript
js实现经典贪吃蛇小游戏
2020/03/19 Javascript
Python中函数的参数定义和可变参数用法实例分析
2015/06/04 Python
举例讲解Python中的死锁、可重入锁和互斥锁
2015/11/05 Python
用Python一键搭建Http服务器的方法
2018/06/01 Python
Django 对IP访问频率进行限制的例子
2019/08/30 Python
data:image data url 文件转为Blob上传后端的方法
2019/07/16 HTML / CSS
台湾演唱会订票网站:StubHub台湾
2019/06/11 全球购物
会计自我鉴定
2014/02/04 职场文书
小学教师师德师风演讲稿
2014/08/22 职场文书
新员工入职欢迎词
2015/01/23 职场文书
工作失职检讨书
2015/01/26 职场文书
团队执行力培训心得体会
2015/08/15 职场文书
python 常用的异步框架汇总整理
2021/06/18 Python
阿里云国际版 使用Nginx作为HTTPS转发代理服务器
2022/05/11 Servers
win10截图快捷键win+shift+s没有反应无法截图怎么解决?
2022/08/14 数码科技