新的 Laravel 安装给 Mcrypt “错误”。 (OSX)
Posted
技术标签:
【中文标题】新的 Laravel 安装给 Mcrypt “错误”。 (OSX)【英文标题】:Fresh Laravel install giving Mcrypt "error". (OSX) 【发布时间】:2014-06-04 06:58:18 【问题描述】:我通过运行安装 laravel:
laravel new testing
它的回应是:
申请准备就绪!打造令人惊叹的东西。
然而,当我访问 public/index.php
时,它会显示一个空白页面,上面写着:
需要 Mcrypt PHP 扩展。
当我运行 php -m
时,它没有列出 Mcrypt。
我尝试使用 composer 安装它,通过运行:
composer create-project laravel/laravel laravel_composer --prefer-dist
结果如下:
Writing lock file
Generating autoload files
Mcrypt PHP extension required.
Script php artisan clear-compiled handling the post-install-cmd event returned with an error
[RuntimeException]
Error Output:
“错误输出:”之后没有任何附加内容:
【问题讨论】:
它可能需要安装 mcrypt 库;) 请提供更多信息,您使用的是哪个 PHP 可执行文件?是 OS X 自带的,还是 MAMP 或其他的? 用 mcrypt 重新编译 PHP。 @RonniEgeriis 我正在使用 php 的默认安装位置。 '/usr/bin/php' 我建议使用 MAMP 并将默认的php
符号链接指向 MAMP 安装中的 php 二进制文件。这是迄今为止最简单的解决方案。您也可以直接调用 php 二进制文件,例如/Applications/MAMP/bin/php/php5.4.10/bin/php script.php
@ChinDave 你应该发布一个答案并接受它,这样这个问题就不会出现在未回答的列表中。
【参考方案1】:
OP 的解决方案。
我通过使用自制软件更新到 php55 和 php55-mcrypt 解决了这个问题。
我遇到了安装后 php 版本冲突的问题,我通过编辑 apache2 httpd.conf 属性 LoadModule php5_module
解决了这个问题。通过取消注释并更改默认文件路径以查找local/php5-5.5.11-20140408-141340/libphp5.so
。
Mcrypt 不再是问题,apache 正在定位正确的 php。我要做的最后一件事是使用chmod -R o+w storage
更改laravel_project/app/storage
的权限
【讨论】:
以上是关于新的 Laravel 安装给 Mcrypt “错误”。 (OSX)的主要内容,如果未能解决你的问题,请参考以下文章
Laravel 升级到 4.2 - 需要 mcrypt 扩展
Laravel Artisan Migrate 安装 [需要 mcrypt php 扩展]
找不到 mcrypt => 调用未定义的函数 Laravel\mcrypt_create_iv()