CentOS下php安装mcrypt扩展
确认你的linux没有安装mcrypt库,如果已安装,跳过安装步骤
1 | [root@test-206 ~]# yum list installed|grep mcrypt |
以上显示已经安装过,若没有,则按以下两种方式安装
yum命令懒人安装
1 | yum install libmcrypt libmcrypt-devel mcrypt mhash |
执行后会显示即将安装的相关库,你可以根据你的linux限定x86_64或者i386,如yum install libmcrypt.x86_64(如果yum命令无法连接仓库,请检查你的/etc/yum.repos.d/里的文件正确性,以及你的/etc/host是不是可达里面的域名)
1 | Dependencies Resolved |
确定安装,最后显示
1 | Installed: |
源码编译安装
去http://www.sourceforge.net下载Libmcrypt,mhash,mcrypt安装包
1 | libmcrypt(libmcrypt-2.5.8.tar.gz ): |
先安装Libmcrypt
1 | #tar -zxvf libmcrypt-2.5.8.tar.gz |
安装mhash
1 | #tar -zxvf mhash-0.9.9.9.tar.gz |
安装mcrypt
1 | #tar -zxvf mcrypt-2.6.8.tar.gz |
最后,还是检查下,是否安装成功
安装php的mcrypt扩展(动态加载编译)
下载php下的mcrypt扩展或者直接下载php的完整安装包
http://cn.php.net/releases/ 网页下找到自己服务器的php版本,下载后tar解压(本人的是php5.3.3)
进入ext/mcrypt文件夹
1 | [root@*_* 14:45 ~]# cd php-5.3.3/ext/mcrypt/ |
执行phpize命令(phpize是用来扩展php扩展模块的,通过phpize可以建立php的外挂模块,如果没有?yum install php53-devel里包含了,或者其他方法)
1 | [root@*_* 14:48 mcrypt]# whereis phpize //为了确定phpize存在 |
执行完后,会发现当前目录下多了一些configure文件,最后执行php-config命令就基本完成了
执行以下命令,确保你的/usr/bin/php-config是存在的
1 | [root@*_* 15:02 mcrypt]# whereis php-config |
如果遇到以下错误,请先安装gcc,命令yum install gcc
1 | configure: error: no acceptable C compiler found in $PATH |
直到不报错,出现:config.status: creating config.h,执行以下命令
1 | [root@*_* 15:06 mcrypt]# make && make install |
最后的最后,会提示你如下,说明你大功告成了
1 | Installing shared extensions: /usr/lib64/php/modules/ |
顺便检查下/usr/lib64/php/modules/里的mrcypt.so扩展是否已经创建成功
然后的事就简单了,给你的php.ini添加一条extension=mcrypt.so
1 | [root@*_* 15:09 mcrypt]# cd /etc/php.d |
创建一个mrcypt.ini文件就行,里面写extension=mcrypt.so
1 | [root@*_* 15:17 php.d]# echo 'extension=mcrypt.so' > mcrypt.ini |
重启apache,查阅phpinfo,mcrypt模块扩展是不是加载了?
评论
TwikooValine