ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

为PHP添加mcrypt扩展模块

2021-03-12 14:02:59  阅读:231  来源: 互联网

标签:php tar make usr 模块 mcrypt PHP local


基本原理是:首先使mcrypt软件能够运行,然后安装php扩展模块,并在php.ini配置。

这里注意的是mcrypt软件依赖libmcrypt和mhash两个库,所以安装配置顺序从右至左

一,下载安装mcrypt

1.先去http://www.sourceforge.net下载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/文件夹下。因些在配置mcrypt时要加入LD_LIBRARY_PATH=/usr/local导入键接库

二, 安装PHP扩展模块

1. 静态编译

在任意PHP文件中加入函数 phpinfo(),即可取得目前PHP的配置

在这些配置后面新增需要加入的配置:’–with-mcrypt=/usr/local/include’

然后进入php源代码目录,执行这条完整的configure命令

配置完成,下面进行源码包的制作和安装

make clean (一定需要)

make

make install

2. 动态加载

使用php的常见问题是:编译php时忘记添加某扩展,后来想添加扩展,但是因为安装php后又装了一些东西如PEAR等,不想删除目录重装,于是可以采用phpize。方法是:

要有与现有php完全相同的php压缩包 。我用的是php-5.2.6.tar.gz。展开后进入里面的ext/mcrypt目录 (里面是mcrypt的php扩展),然后执行/usr/local/php/bin/phpize。phpize是安装php时安装好的一个工具,如果你的机器没有安装phpize工具,那么可能还是要make,make install php,仅仅为了得到phpize.

执行完后,会发现当前目录下多了一些configure文件,如果没报错,则根据提示运行

   ./configure --with-php-config=/usr/local/php/bin/php-config
注意要先确保/usr/local/php/bin/php-config存在。
make

make install

Php代码

./configure --with-php-config=/usr/local/php/bin/php-config

make install 之后系统会提示你mcrypt.so文件所在的目录。根据php.ini中指示的extension_dir指向的目录中, 将其复制过去。修改php.ini,在最后添加一句extension=mcrypt.so

最后重启APACHE服务,万事OK。

标签:php,tar,make,usr,模块,mcrypt,PHP,local
来源: https://blog.csdn.net/ichen820/article/details/114693918

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有