【发布时间】:2014-12-07 03:52:05
【问题描述】:
我在全新安装的 Xubuntu 14.04 上安装了 Laravel。据我所知,Mcrypt 已安装并运行,但 Laravel 仍然报告找不到它。
测试 Mcrypt
我已经安装了所有正确的软件包,并且该模块似乎已启用,我通过一些基本的诊断检查确定了这一点。
当我运行时,Mcrypt 在已安装的 php 模块列表中:
php -m
我在运行时从终端得到“加载”:
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 的原因?
【问题讨论】:
-
通过命令行的 php 是否有机会通过 http 使用与 php 不同的配置?用
<?php phpinfo()?>运行一个网页并检查那里? -
也许这个问题中的一个答案可以帮助你。 stackoverflow.com/questions/16830405/…
-
我必须手动将 mcrypt 添加到 apache2 php.ini,这可以解释为什么命令行和作曲家可以将 PHP 与 mcrypt 一起使用,但浏览器不能。干杯!