联系官方销售客服

1835022288

028-61286886

POSCMS 版主:POSCMS负责人
PHP未开启Mcrypt扩展用不了啊
类型:POSCMS 更新时间:2017-12-28 15:36:27

请问是怎么回事呢

谢谢

回帖
  • CTO
    #1楼    CTO
    2017-11-28 16:32:35
    0
    收藏有开启方法,需要配置服务器,找空间商技术吧,一般这种免费配
  • 刘冰
    #2楼    刘冰
    2017-12-28 15:11:48
    0
    开启扩展就可以了,php的环境配置
  • 处女座
    #3楼    处女座
    2017-12-28 15:26:37
    0

    本文大部分都是别人的,只是根据自己的使用过程加了一点说明,希望原作者不要介意。

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

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

    一,下载安装mcrypt

    1.直接百度搜索三个包名libmcrypt-2.5.8.tar.gz,mcrypt-2.6.8.tar.gz ,mhash-0.9.9.9.tar.gz 就可以下载了

    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/lib

    3.安装mhash

    #tar -zxvf mhash-0.9.9.9.tar.gz

    #cd mhash-0.9.9.9

    #./configure

    #make

    #make install 默认安装在/usr/local/lib

    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 默认安装在/usr/local/bin

    说明:由于在配置Mcrypt时,会找不到libmcrypt的链接库,导致无法编译,因为Libmcrypt的链接库在/usr/local/文件夹下。因些在配置mcrypt时要加入LD_LIBRARY_PATH=/usr/local导入键接库

    安装的时候即(make install)注意看一下安装到了哪里,即查看一下自己的安装目录是否正确

    二, 安装PHP扩展模块

    1. 静态编译(这个我没试过)

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

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

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

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

    make clean (一定需要)

    make

    make install

    2. 动态加载 (这个是在你已经安装好php时,在已有的php中添加mcrypt拓展的方法)

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

    要有与现有php完全相同的php压缩包(这个非常重要,必须和你已安装的php是同一个版本。可以在你的apache中运行phpinfo();函数查看你的php版本) 。我用的是php-5.2.6.tar.gz。展开后进入里面的ext/mcrypt目录 (里面是mcrypt的php扩展),然后执行/usr/local/php/bin/phpize(可以试用whereis phpize查找出你系统中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存在(使用whereis php-config查找出系统中php-config的位置)。

    make

    make install

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

    extension=输出的的目录名/mcrypt.so

    重启APACHE服务

    可以使用service httpd restart重启apache

    如果不能重启,可以试试使用killall httpd杀掉所有的apache进程。然后service httpd start

    ,万事OK。

  • 王兴业
    #4楼    王兴业
    2017-12-28 15:36:27
    0
    百度复制的,http://www.xunruicms.com/v3doc/2490.html【处女座】3楼