PHP依賴安裝工具mcrypt,Mcrypt是PHP的一個擴展,完成了常用加密算法的封裝。其實該擴展是對mcrypt標準類庫的封裝,mcrypt完成了相當多的常用加密算法,如DES, TripleDES, Blowfish (default), 3-WAY, SAFER-SK64, SAFER-SK128, TWOFISH, TEA, RC2 和 GOST加密算法,並且提供了CBC、OFB、CFB 和 ECB 四種塊加密的模型。
要使用該擴展,必須首先安裝mcrypt標準類庫,注意的是mcrypt軟件依賴libmcrypt和mhash兩個庫。
1.下載Libmcrypt,mhash,mcrypt安裝包
Libmcrypt(libmcrypt-2.5.8.tar.gz):http://sourceforge.net/project/showfiles.php?group_id=87941&package_id=91774&release_id=487459
mcrypt(mcrypt-2.6.8.tar.gz ):http://sourceforge.net/project/showfiles.php?group_id=87941&package_id=91948&release_id=642101
mhash(mhash-0.9.9.9.tar.gz):http://sourceforge.net/project/showfiles.php?group_id=4286&package_id=4300&release_id=645636
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/lib文件夾下。
因次,在配置mcrypt時要加入LD_LIBRARY_PATH=/usr/local/lib導入鍵接庫。
三.安裝PHP的Pecl擴展mcrypt
注意mcrypt是PHP自帶的Pecl擴展,所以隻要去PHP的解壓縮目錄去找mcrypt包即可。
這一點區別於PHP安裝第三方擴展,參考PHP安裝與使用VLD查看opcode代碼【PHP安裝第三方擴展的方法】
1.動態加載
使用php的常見問題是:編譯php時忘記添加某擴展,後來想添加擴展,但是因為安裝php後又裝了一些東西如PEAR等,不想重裝整個PHP,於是可以采用動態編譯,使用phpize。需要注意的是要有與現有php完全相同的php壓縮包。
#cd /usr/php-5.4.8/ext/mcrypt
#/usr/local/webserver/php/bin/phpize
#./configure --with-php-config=/usr/local/webserver/php/bin/php-config
#make && make install
給你的php.ini添加一條extension=mcrypt.so
重啟apache
# /usr/local/apache2/bin/apachectl restart
查看phpinfo(),mcrypt以及安裝好
安裝完成
--------------------------
2.靜態編譯
在任意PHP文件中加入函數 phpinfo(),即可取得目前PHP的配置
在這些配置後麵新增需要加入的配置:--with-mcrypt --with-mhash
然後進入php源代碼目錄make clean(一定需要) ,然後執行這條完整的configure命令,依次
make
make install
根據你的需要加上所要的配置,例如:
./configure --with-apxs2=/usr/local/web/apache/bin/apxs --with-mcrypt --with-mhash
//./configure --with-apxs2=/usr/local/web/apache/bin/apxs --with-mcrypt --with-mhash --with-libxml-dir --enable-bcmath --enable-sockets
76.4M / 03-25
55M / 06-05
237.9M / 04-13
140.5M / 03-06
900.9M / 03-02
96.2M / 07-06
311.2M / 07-06
335M / 07-06
200M / 07-06
413.8M / 07-06
353.9M / 06-05
131.8M / 04-13
230.8M / 03-03
195.6M / 03-03
165.4M / 03-03
45.6M / 09-08
665.2M / 07-06
2.84G / 07-06
93M / 07-06
338.3M / 07-06
1.38G / 07-26
488.3M / 07-16
109.8M / 06-03
142M / 01-08
1.2M / 11-23
548.8M / 04-13
1.6M / 04-13
1.48G / 03-18
646.6M / 03-03
133.7M / 03-03
325.8M / 06-07
60M / 04-29
254M / 04-25
659M / 04-23
1M / 12-26
253.4M / 12-08
253M / 12-08
1.19G / 11-16
110.5M / 04-23
26.7M / 03-16
488.3M / 07-16
248.9M / 12-08
248.9M / 12-08
201.2M / 04-13
100.6M / 03-06
148.9M / 03-06
1.12G / 07-06
1.25G / 07-06
9.48G / 07-06
50KB / 07-06
116.2M / 04-10
1.92G / 04-17
201.5M / 04-13
7.31G / 07-01
94.3M / 07-06
2.48G / 07-06
7.63G / 07-06
1M / 07-06
778.1M / 07-06
509.7M / 07-06
561.8M / 07-11
1.32G / 01-19
72M / 07-06
548.7M / 07-06
1.00G / 07-06
9.13G / 07-06
126.2M / 07-06
72M / 07-06
105.1M / 07-06
132M / 07-06