解决 MAMP / MAMP Pro 4.1 升级后无法使用 Mcrypt 等模块

2017-01-24 22:55:58 +08:00
 liuhaotian

今天升级了 MAMP 到 4.1 版本,但是 MAMP / MAMP Pro 升级到 4.1 版本之后会提示 Mcrypt 等 extension 都提示未安装的异常。重新安装了之后问题还是存在,查看了它的模块路径下,可以看到 Mcrypt 文件,并且也可以看到有 --with-mcrypt=shared 的正常参数,然后又查看了 MAMP 的 Apache-php 的配置文件 php.ini ,同样也存在 extension=mcrypt.so 这一行未被注释。

打开空文件,查看 phpinfo() 也可以看到 Mcrypt 模块存在,但是 Mcrypt 的模块没有详细信息。这让我猜测是模块没有被成功载入。于是我又尝试了一些其它的 Memcache 等模块发现同样无法正常载入。

再次检查 php.ini 后发现,引入模块目录的路径为

extension_dir = "/Applications/MAMP/bin/php/php7.1.0/lib/php/extensions/no-debug-non-zts-20151012/"

然而,高能的部分是,这个路径不存在,然后到上层目录才发现,实际模块路径为

/Applications/MAMP/bin/php/php7.1.0/lib/php/extensions/no-debug-non-zts-20160303/

修改了这个路径之后,重启 MAMP 就可以正常使用基本的自带模块了。这次 MAMP 开发组犯的错误有点傻。

原文发布: https://www.vexio.net/archives/1069.html

4133 次点击
所在节点    PHP
15 条回复
explon
2017-01-24 23:03:51 +08:00
不用这么麻烦,图形界面 Cache 设置那边切换一下 Cache 就好了
liuhaotian
2017-01-24 23:21:58 +08:00
@explon Cache 我设置了,它似乎并不会更改插件的路径,也不会更改配置文件,测试模块依旧不可以用诶
leakeung
2017-01-25 11:20:04 +08:00
说起 MAMP Pro 4.1 我也吐槽
1. 启动速度没上个版本快
2. 竟然出现程序崩溃 (可能和 OS X SIERRA 不兼容)
3. 更新频率太大..三天两头更新一次.
cxbig
2017-01-25 19:30:10 +08:00
折腾,用 brew 多简单。。。
lygmqkl
2017-01-25 22:29:24 +08:00
建议 mac 不要用集成环境,稍微有一点搞不好就是血的代价
ychongsaytc
2017-01-26 03:45:19 +08:00
@lygmqkl 同意。

让我想起十二要素里指出的「去除本地环境和线上环境的差异」
ychongsaytc
2017-01-26 03:46:23 +08:00
@lygmqkl 也确实因此经历过血的代价…
Deadpxxl
2017-01-26 23:48:12 +08:00
为了时间漏洞 坚守 4.0.6
sobigfish
2017-02-01 15:03:25 +08:00
Niphor
2017-02-04 01:13:17 +08:00
话说 MAMP 有自带 xdebug 么

文档上写着有,但是 beta 版本 装了就是没找着
liuhaotian
2017-02-04 10:33:17 +08:00
@Niphor xdebug 好像是 PRO 上有吧,我只在这里看到了 xdebug
http://documentation.mamp.info/en/MAMP-PRO-Mac/Languages/PHP/
liuhaotian
2017-02-04 10:34:33 +08:00
@Niphor 不过我记得我之前好像看到过那个路径下有 xdebug 。现在我把 MAMP 删了换成了 brew 套装,迁移完了。。
/Applications/MAMP/bin/php/php7.1.0/lib/php/extensions/no-debug-non-zts-20160303/
这里好像有 xdebug.so
Niphor
2017-02-04 14:50:55 +08:00
@liuhaotian
orz 发现我下的是 bitnami.com 上的,好像和楼主的不一样。。。
liuhaotian
2017-02-04 15:27:28 +08:00
@Niphor 一起卸载用 brew 装 233333
liuhaotian
2017-02-04 15:28:06 +08:00
@Niphor 实际上可以去看看 php.ini 在哪里,然后去 php.ini 里面找 extension 的路径,进一步排查。。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/336773

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX