zoukankan      html  css  js  c++  java
  • CentOS下php安装mcrypt扩展

    (以下步骤均为本人实际操作,可能与你的安装方法有所区别,但我会尽量排除疑惑)

    大致步骤(1)安装mcrypt,(2)安装php对mcrypt的扩展,(3)重启apache

    (1)、确认你的linux没有安装mcrypt库,如果已安装,跳过安装步骤

    [root@test-206 ~]# yum list installed|grep mcrypt
    libmcrypt.x86_64                          2.5.8-4.el5.centos           installed
    libmcrypt-devel.x86_64                    2.5.8-4.el5.centos           installed
    mcrypt.x86_64                             2.6.8-1.el5                  installed

    以上显示已经安装过,若没有,则按以下两种方式安装

    方法一)yum命令懒人安装

    yum install libmcrypt libmcrypt-devel php-mcrypt mhash

    执行后会显示即将安装的相关库,你可以根据你的linux限定x86_64或者i386,如yum install libmcrypt.x86_64(如果yum命令无法连接仓库,请检查你的/etc/yum.repos.d/里的文件正确性,以及你的/etc/host是不是可达里面的域名)

    复制代码
    Dependencies Resolved
    
    ================================================================================
     Package              Arch        Version                   Repository     Size
    ================================================================================
    Installing:
     libmcrypt            i386        2.5.7-5.el5               epel          124 k
     libmcrypt            x86_64      2.5.8-4.el5.centos        extras        105 k
     libmcrypt-devel      i386        2.5.7-5.el5               epel          103 k
     libmcrypt-devel      x86_64      2.5.8-4.el5.centos        extras         10 k
     mcrypt               x86_64      2.6.8-1.el5               epel           88 k
     mhash                i386        0.9.2-6.el5               epel          141 k
     mhash                x86_64      0.9.9-1.el5.rf            rpmforge      161 k
    
    Transaction Summary
    ================================================================================
    Install       7 Package(s)
    Upgrade       0 Package(s)
    
    Total download size: 731 k
    Is this ok [y/N]:
    复制代码

    确定安装,最后显示

    复制代码
    Installed:
      libmcrypt.x86_64 0:2.5.8-4.el5.centos
      libmcrypt-devel.x86_64 0:2.5.8-4.el5.centos
      mcrypt.x86_64 0:2.6.8-1.el5
      mhash.x86_64 0:0.9.9-1.el5.rf
    
    Complete!
    复制代码

    使用方法一注意:默认yum源里面没有这几个库文件,不能使用yum安装,需呀安装第三方源

     安装第三方源可能升级你的部分程序,导致出错,比如升级php导致部分api不能使用,谨慎使用

    ###################################################
    
    wget http://apt.sw.be/redhat/el6/en/i386/rpmforge/RPMS/rpmforge-release-0.5.2-2.el6.rf.i686.rpm
    wget http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt
    rpm --import RPM-GPG-KEY.dag.txt
    rpm -ivh rpmforge-release-0.5.2-2.el6.rf.i686.rpm
    vi  /etc/yum.repos.d/rpmforge.repo  #修改rpmforge yum源优先级,priority=12
    ##################################################
    
    rpm -ivh http://download1.rpmfusion.org/free/el/updates/testing/6/i386/rpmfusion-free-release-6-0.1.noarch.rpm
    vi  /etc/yum.repos.d/rpmfusion-free-updates-testing.repo   
    #修改rpmfusion yum源优先级,priority=13
    
    ##############################################
    #下载
    wget http://www.atomicorp.com/installers/atomic  
    #安装
    sh ./atomic   
    #修改atomic yum源优先级,
    vi  /etc/yum.repos.d/atomic.repo  
    #priority=14

    参考:http://blog.chinaunix.net/uid-20754878-id-3092063.html

    方法二)源码编译安装,去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

    最后,还是检查下,是否安装成功

    (2)、安装php的mcrypt扩展(动态加载编译)

    下载php下的mcrypt扩展或者直接下载php的完整安装包

    http://php.net/releases/index.php网页下找到自己服务器的php版本,下载后tar解压(本人的是php5.3.3)

    进入ext/mcrypt文件夹

    [root@*_* 14:45 ~]# cd php-5.3.3/ext/mcrypt/

    执行phpize命令(phpize是用来扩展php扩展模块的,通过phpize可以建立php的外挂模块,如果没有?yum install php53-devel里包含了,或者其他方法)

    [root@*_* 14:48 mcrypt]# whereis phpize    //为了确定phpize存在
    phpize: /usr/bin/phpize /usr/share/man/man1/phpize.1.gz
    [root@*_* 14:48 mcrypt]# phpize
    Configuring for:
    PHP Api Version:         20090626
    Zend Module Api No:      20090626
    Zend Extension Api No:   220090626

    执行完后,会发现当前目录下多了一些configure文件,最后执行php-config命令就基本完成了

    执行以下命令,确保你的/usr/bin/php-config是存在的

    [root@*_* 15:02 mcrypt]# whereis php-config
    php-config: /usr/bin/php-config /usr/share/man/man1/php-config.1.gz
    [root@*_* 15:02 mcrypt]# ./configure --with-php-config=/usr/bin/php-config

    如果遇到以下错误,请先安装gcc,命令yum install gcc

    configure: error: no acceptable C compiler found in $PATH

    直到不报错,出现:config.status: creating config.h,执行以下命令

    [root@*_* 15:06 mcrypt]# make && make install

    最后的最后,会提示你如下,说明你大功告成了

    Installing shared extensions:     /usr/lib64/php/modules/

    顺便检查下/usr/lib64/php/modules/里的mrcypt.so扩展是否已经创建成功

    然后的事就简单了,给你的php.ini添加一条extension=mcrypt.so

    [root@*_* 15:09 mcrypt]# cd /etc/php.d

    创建一个mrcypt.ini文件就行,里面写extension=mcrypt.so

    [root@*_* 15:17 php.d]# echo 'extension=mcrypt.so' > mcrypt.ini

    (3) 、重启apache,查阅phpinfo,mcrypt模块扩展是不是加载了?

    yum install php-mcrypt 

    原文:http://www.cnblogs.com/huangzhen/archive/2012/09/12/2681861.html

    知识共享许可协议
    作品Tim Zhang创作,采用知识共享署名 3.0 中国大陆许可协议进行许可。 。
  • 相关阅读:
    dpkg: error processing package XXX (--configure) 解决方法 (ubuntu右上角红色警告)
    overlay2 在打包发布流水线中的应用
    别总写代码,这130个网站比涨工资都重要
    csv 导出变成字符串
    mysql 报错 invalid data source name
    win10 phpredis扩展安装
    redis启动命令
    IDEA Plugins:Easycode(代码生成)安装及使用
    mysql设置自动更新时间
    IDEA快捷键之for循环
  • 原文地址:https://www.cnblogs.com/ccdc/p/3030156.html
Copyright © 2011-2022 走看看