使用 yum install php-mcrypt 安裝mcrypt擴(kuò)展時(shí)會(huì)提示沒(méi)有安裝包
Setting up Install Process
No package php-mcrypt available.
Error: Nothing to do
mcrypt 是加密擴(kuò)展庫(kù),加載了它可以用他里面自帶的22種加密解密算法
CentOS6 默認(rèn)安裝的是php5.3.2
默認(rèn)的 redhat repos php中是沒(méi)有 mcrypt 擴(kuò)展的
根據(jù)紅帽的官方消息(https://bugzilla.redhat.com/show_bug.cgi?id=621268)RHEL 不打算添加PHP的mcrypt 的支持
Joe Orton 2010-08-05 04:47:17 EDT
Thanks for the report.
We are not planning to ship mcrypt support for PHP.
解決方法:
從php 官網(wǎng)下載新的php 5.3 源碼包后,解壓到本地目錄
進(jìn)入解壓目錄下的 ext 目錄后會(huì)發(fā)現(xiàn)有 mcrypt ,
進(jìn)入 mcrypt 目錄
#cd /ext/mcrypt
#phpize
注意:如果報(bào) -bash:phpize not Found 那么 yum install php-devel 就可以使phpize進(jìn)行動(dòng)態(tài)編譯安裝擴(kuò)展
#./configure -with-php-config=/usr/sbin/php/bin/php-config
#make make install
出現(xiàn):
----------------------------------------------------------------------
Libraries have been installed in:
/var/php-5.3.10/ext/mcrypt/modules
If you ever happen to want to link against installed libraries
in a given directory, LIBDIR, you must either use libtool, and
specify the full pathname of the library, or use the `-LLIBDIR'
flag during linking and do at least one of the following:
- add LIBDIR to the `LD_LIBRARY_PATH' environment variable
during execution
- add LIBDIR to the `LD_RUN_PATH' environment variable
during linking
- use the `-Wl,-rpath -Wl,LIBDIR' linker flag
- have your system administrator add LIBDIR to `/etc/ld.so.conf'
See any operating system documentation about shared libraries for
more information, such as the ld(1) and ld.so(8) manual pages.
----------------------------------------------------------------------
Build complete.
Don't forget to run 'make test'.
Installing shared extensions: /usr/lib64/php/modules/
查看:
# php -m
...
libxml
mbstring
mcrypt
mysql
...
[Zend Modules]
已安裝成功!
再次查看 phpinfo ,可以看到mcrypt 擴(kuò)展詳情。