Call to undefined function: mcrypt_module_open()

  • Post author:
  • Post category:其他


windows


当运行php的服务器端缺少libmcrypt.dll时使用函数mcrypt_module_open进行解密会出现此错误。

在服务器上做如下设置可解决。

到网上下载一个php的mcrypt模块安装包,只需要libmcrypt.dll文件即可

1.将libmcrypt.dll复制到system32目录或php安装目录下的extensions目录下

2.将libmcrypt.dll复制到apache安装目录的bin目录下

3.到php安装目录下找到php.ini文件,打开它

4.找到; Directory in which the loadable extensions (modules) reside.

extension_dir = “./”

这两行,要使extension_dir指向的目录下能找到libmcrypt.dll,或系统path下有libmcrypt.dll

5.找到;Windows Extensions 项下面的;extension=php_mcrypt.dll这一行和;extension=php_iconv.dll这两行

6.去掉;extension=php_mcrypt.dll前面的分号和;extension=php_iconv.dll前面的分号

7.到apache安装目录下找到php.ini文件,打开它

8.找到; Directory in which the loadable extensions (modules) reside.

extension_dir = “./”

这两行,要使extension_dir指向的目录下能找到libmcrypt.dll,或系统path下有libmcrypt.dll

9.找到;Windows Extensions 项下面的;extension=php_mcrypt.dll这一行和;extension=php_iconv.dll这两行

10.去掉;extension=php_mcrypt.dll前面的分号和;extension=php_iconv.dll前面的分号

以上由smartdp原创。



linux





显示


Call to undefined function: mcrypt_module_open()


的错误

原因:缺少


libmcrypt-2.5.7.tar.gz
到这里

ftp://mcrypt.hellug.gr/pub/crypto/mcrypt/

下载libmcrypt-2.5.7.tar.gz,

tar -zxvf libmcrypt-2.5.7.tar.gz

cd libmcrypt-2.5.7

./configure –prefix=/usr/local/libmcrypt

make

make check

make install

成功后在进入


php

./configure –prefix=/usr/local/php –with-apxs2=/usr/local/httpd/bin/apxs –with-gd=/usr/local/gd –enable-gd –enable-gd-native-ttf –with-jpeg-dir=/usr/local/jpeg6 –with-png=/usr/local/lib –with-ttf –with-zlib=/usr/local/zlib –with-freetype-dir=/usr/local/freetype –enable-magic-quotes –with-mysql=/usr/local/mysql –with-mysql-sock=/usr/local/mysql/tmp/mysql.sock –with-iconv –with-mbstring –enable-mbstring –enable-track-vars –enable-force-cgi-redirect –enable-ftp –with-config-file-path=/usr/local/httpd/conf –with-pear=/usr/local/php/pear –with-mcrypt=/usr/local/libmcrypt

配置


php

make

make install

重新启动服务器



版权声明:本文为wangschang原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。