Linux学习-79-mhash和mcrypt安装过程
创始人
2024-04-22 04:52:45
0

17.4 mhash和mcrypt安装过程

  • mhash源码包安装:mhash 是基于离散数学原理的不可逆向的PHP加密方式扩展库。mhash 可以用于创建校验数值,消息摘要,消息认证码,以及无须原文的关键信息保存(如密码)等。安装步骤如下:
#进入解压缩目录
[root@CncLucZK src]# cd mhash-0.9.9.9
#没有指定安装位置。因为在mcrypt包安装时,会在默认位置查找mhash包,如果指定了安装位置,那么mcrypt包在安装时会报错
[root@CncLucZK mhash-0.9.9.9]# ./configure
...
config.status: creating include/mutils/mhash_config.h
config.status: executing depfiles commands
#编译
[root@CncLucZK mhash-0.9.9.9]# make
#编译安装。把安装过程保存在mhash_install.log文件中,便于删除
[root@CncLucZK mhash-0.9.9.9]# make install >> /root/mhash_install.log
  • mcrypt源码包安装:mcrypt 是 PHP 里面重要的加密支持扩展库,是对mcrypt标准类库的封装,mcrypt支持 20 多种加密算法和 8 种加密模式。如DES, TripleDES, Blowfish (default), 3-WAY, SAFER-SK64, SAFER-SK128, TWOFISH, TEA, RC2 和 GOST加密算法,CBC、OFB、CFB 和 ECB 四种块加密的模型。mcrypt 要比 libmcrypt 更加先进,在很多项目中必须使用 mcrypt 加密方式。注意,在安装 mcrypt 之前,必须先正确安装 libmcrypt 和 mhash。完成了常用加密算法的封装。
#进入源码目录
[root@CncLucZK ~]# cd /usr/local/src/mcrypt-2.6.8
#LD_LIBRARY_PATH用于指定libmcrypt和mhash库的位置
#./configure为编译前准备命令,——with-libmcrypt-prefix用于指定libmcrypt软件位置
[root@CncLucZK mcrypt-2.6.8]# LD_LIBRARY_PATH=/usr/local/libmcrypt/lib:/usr/local/lib ./configure --with-libmcrypt-prefix=/usr/local/libmcrypt
#编译
[root@CncLucZK mcrypt-2.6.8]# make
#编译安装
[root@CncLucZK mcrypt-2.6.8]# make install

注意,在这里 mcrypt 并没有安装完成。因为mcrypt是PHP自带的Pecl扩展,所以只要去PHP的解压缩目录去找mcrypt包即可。

这一点区别于PHP安装第三方扩展,所以需要等到 PHP 安装完成之后,再继续安装。

  • PHP 模块安装成功后,才能按照以下步骤继续安装 mcrypt。
  • **动态加载方式:**使用php的常见问题是:编译php时忘记添加某扩展,后来想添加扩展,但是因为安装php后又装了一些东西如PEAR等,不想重装整个PHP,于是可以采用动态编译,使用phpize。

1.扩展包的编译安装:到/usr/local/src/php-5.4.25/ext/mcrypt等扩展路径下用/usr/local/php/bin/phpize的命令加载到php环境中,这个目录下有很多自带的扩展源码,缺少什么扩展只需要进入这个扩展目录下,再运行Phpize即可。命令如下:

#再php-8.0.0/ext的扩展包下没有这个mcrypt模块,所以需要将php-5.4.25/ext/mcrypt
[root@CncLucZK ~]# cd /usr/local/src/php-5.4.25/ext/mcrypt
#使用phpize加载PDO模块
[root@CncLucZK mcrypt]# /usr/local/php/bin/phpize
Configuring for:
PHP Api Version:         20200930
Zend Module Api No:      20200930
Zend Extension Api No:   420200930#编译前配置:指定php-config文件的位置,调用libmcrypt 
[root@localhost mcrypt]# ./configure --with-php-config=/usr/local/php/bin/php-config --with-mcrypt=/usr/local/libmcrypt
#编译安装
[root@localhost mcrypt]# make && make install

2.修改PHP配置文件:要让 PHP 可以识别和使用 memcache 和 mcrypt 模块,还需要修改一下 PHP 的配置文件,命令如下:

[root@localhost mcrypt]# vi /usr/local/php/etc/php.ini
#修改PHP配置文件
extension_dir = "./"
#在这个文件中找到这句话,把它改为以下这句话
extension_dir="/usr/local/php/lib/php/extensions/no-debug-zts-20200930/"
#新加入以下两句话
extension="memcache.so";
extension="mcrypt.so";

安装完成之后,重启 apache,就可以在 phpinfo 页面中看到这两个模块了。

  • 静态编译:在PHP编译安装时,进入php源代码目录进行编译,先make clean(一定需要)上次的Makefile文件 ,然后执行configure命令时加入的配置:
./configure	\
--with-mcrypt \
--with-mhash

最后进行编译安装 make && make install

下一篇:Linux学习-80-zlib、libpng和jpeg6安装过程

相关内容

热门资讯

虞书欣谈成名的代价令人心疼,如... 虞书欣谈成名的代价令人心疼,如今她在圈内的前景如何?虞书欣在圈内前景是很不错的,大家都很喜欢她,也有...
最有效的减肥食谱 最有效的减肥食谱谁有最有效的减肥食谱呢?麻烦给一个吧?急求最有效的减肥食谱,听说有一个什么汤的可以很...
关晓彤鹿晗被曝月底会分手,你对... 关晓彤鹿晗被曝月底会分手,你对于他们两个的爱情有什么看法?当初我也觉得他们俩的感情肯定不会长久的,但...
她曾在家中喂猪,却被张艺谋相中... 她曾在家中喂猪,却被张艺谋相中一夜成名,魏敏芝如今过得怎样?魏敏芝过得非常不错啊,而且当地的头衔也是...
电影《中邪》主要讲了什么? 电影《中邪》主要讲了什么?中邪的剧情简介 · · · · · ·大学生丁鑫和刘梦为拍摄农村风俗纪录片...
可以在营业厅查到短信的内容吗? 可以在营业厅查到短信的内容吗?查自己的短信==如果你是本人应该可以…不是本人是不可以的那是别人的隐私...
春日时雨时晴,杏花开时,小雨落... 春日时雨时晴,杏花开时,小雨落在身上,衣服欲湿未湿;杨柳风最柔,吹到脸上也下觉其寒。是什么诗句沾衣欲...
低学历的女人真的不能娶吗? 低学历的女人真的不能娶吗?我觉得不是的,娶妻子还是主要看对方的品性如何,而不是在意对方的学历。不一定...
电影配音问题 懂的进来 不是很... 电影配音问题 懂的进来 不是很难我想知道一个问题 比如说 一个电影 演员是 X 那他的说...可以是...
关于大蒜的谜语有哪些 关于大蒜的谜语有哪些有关蒜的谜语有:两二小,头长草 (打字一)谜底:蒜弟兄七八个,围着柱子坐,只要一...
怎么夸老师漂亮 怎么夸老师漂亮老师您长得太有气质了,非常出众,我身为一个女孩子都快要把持不住了。就直接一点说:老师你...
一般怎么钢琴即兴伴奏,一拿到简... 一般怎么钢琴即兴伴奏,一拿到简谱就能伴奏的和弦 天空之城简易般的可一参考 摸摸就出来的 弹一个音 ...
我对异地女友说,异地太苦了我真... 我对异地女友说,异地太苦了我真心问你,你和我一起内心快乐吗?她说,不管日子再苦,有你就是甜的?你一个...
为什么叫镇江 为什么叫镇江为什么叫镇江意义为"Garrison of the Yangtze River"
在足球历史上,阿贾克斯都获得过... 在足球历史上,阿贾克斯都获得过多少次欧冠?一共应该是获得过4次冠军,而且他真的是特别厉害,很少有人可...
时间简史是谁写的? 时间简史是谁写的?史蒂芬·威廉·霍金
我爱她,但她爱他。 我爱她,但她爱他。如果换了我是你!我会一直的爱着她!她爱着他,你又爱着他!她知道爱一个不爱自己人的资...
歌词:我是你的月亮,是你夜里的... 歌词:我是你的月亮,是你夜里的光芒。叫月光曲,嘿嘿
枪神纪里面的英文歌曲叫什么? 枪神纪里面的英文歌曲叫什么?枪神纪里面的英文歌曲叫什么?一首是男的一首是女的,女的那首好像有一句是,...
中外小朋友 大家手拉手 来自五... 中外小朋友 大家手拉手 来自五大洲 是什么歌名?中外小朋友 大家手拉手 来自五大洲 是什么歌名?《庆...