Laravel不是';t识别mcrypt模块


Laravel isn't recognising mcrypt module

我在Xubuntu 14.04的新安装上安装了Laravel。据我所知,Mcrypt已经安装并运行,但Laravel仍然报告它找不到它。

测试Mcrypt

我安装了所有正确的软件包,模块似乎已经启用,我通过进行一些基本的诊断检查来确定这一点。

当我运行时,Mcrypt在已安装的php模块列表中:

php -m

当我运行时,我从终端得到"Loaded":

php -r 'echo PHP_EOL . (extension_loaded("mcrypt") ? "loaded" : "not loaded") . PHP_EOL . PHP_EOL;'

这是php -i | grep mcrypt:的输出

/etc/php5/cli/conf.d/20-mcrypt.ini,
Registered Stream Filters => zlib.*, bzip2.*, convert.iconv.*, string.rot13, string.toupper, string.tolower, string.strip_tags, convert.*, consumed, dechunk, mcrypt.*, mdecrypt.*
mcrypt
mcrypt support => enabled
mcrypt_filter support => enabled
mcrypt.algorithms_dir => no value => no value
mcrypt.modes_dir => no value => no value
PWD => /var/www/html/mcrypttest
_SERVER["PWD"] => /var/www/html/mcrypttest

安装Laravel

我使用了Laravel的新安装来测试这一点,运行:

git clone https://github.com/laravel/laravel mcrypttest
cd mcrypttest/
composer install

有人能建议如何诊断为什么Laravel无法访问mcrypt吗?

答案如下:https://stackoverflow.com/a/26168868/3060414

修复浏览器错误(如果访问本地laravel索引页时浏览器中出现mcrypt错误)

sudo nano /etc/php5/apache2/php.ini

在php-ini-的动态编译扩展部分下添加以下行

extension=mcrypt.so

重新启动apache服务器,清除laravel缓存和所有工作的