机子换了64位ubuntu 13.10,前两天才把apache、mysql之类的装上玩。
apt-get安装了phpmyadmin等等,后来登录发现错误:缺少 mcrypt 扩展,请检查 php 配置。
直接google,有人说安上这几个包:
php5-mcrypt libmcrypt4 libmcrypt-dev
但我发现这几个包都装过了,重装无用,装mcrypt包也无用。搜了半天,又看到这里:http://wujay.iteye.com/blog/1407948
说:
如果出现缺少 mcrypt 扩展。请检查 PHP 配置。提示 执行sudo apt-get install php5-mcrypt 配置php.ini了,加上extension=php_mcrypt.so: ;;;;;;;;;;;;;;;;;;;;;; ; Dynamic Extensions ; ;;;;;;;;;;;;;;;;;;;;;; ; ; If you wish to have an extension loaded automatically, use the following extension=php_mcrypt.so 然后重启apache2就 OK了。
机子里搜索了一下,发现根本没有php_mcrypt.so,刚好瞅到此物:mcrypt.ini,查了下属性,发现在这里:
/etc/php5/conf.d
又打开
/etc/php5/apache2/conf.d
看,发现这里的软链接都挂着5-、10-、20-之类的前缀,不明觉厉,观其属性,发现指向此处:
../../mods-available/xxx.ini
google搜索‘20-pdo_mysql.ini’,看到此页面:https://github.com/puphpet/puphpet/issues/135
看到
[06:04 PM]-[vagrant@precise64]-[~] $ ls /etc/php5/ apache2/ cli/ mods-available/ php.ini [06:04 PM]-[vagrant@precise64]-[~] $ ls /etc/php5/apache2/conf.d/ 05-opcache.ini@ 20-curl.ini@ 20-intl.ini@ 20-mcrypt.ini@ 20-mysql.ini@ 20-xdebug.ini@ 10-pdo.ini@ 20-gd.ini@ 20-json.ini@ 20-mysqli.ini@ 20-pdo_mysql.ini@
于是照葫芦画瓢:
cd /etc/php5/apache2/conf.d/ sudo ln -s ../../conf.d/mcrypt.ini ./20-mcrypt.ini sudo service apache2 restart
再瞅瞅phpMyAdmin,错误提醒没了。
当然解决问题办法不止一种……
#==========================================
说不定以后更新后,又要出问题。