homestead本身自带很多扩展,一般不需要重新安装,但是遇到一些比较特殊的还是需要安装的,比如swoole,mongodb。今天以安装mongodb扩展为例,毕竟是踩过的坑。Homestead官网提出了一个很简单的方法,例如:只需要在Homestead.yaml中添加mongodb:true即可,如下:在Homestead.yaml中---ip:"192.168.10.10"memory:2048cpus:1provider:virtualbox#使用MongoDBmongodb:true如果你这样做,你会发现报错,根本就没有安装成功。不知道在其他环境下会不会成功,在windows和manjaro(linux)下安装失败。网上还是有一些方法的。我已经尝试了所有方法并发现了问题。是因为homestead默认安装了几个php版本,默认是最新版本。您可以使用php-v查看默认版本。一般是最新的,比如7.4.1。但是如果我想安装7.3版本的扩展怎么办?如果使用网上的一些方法,很容易出现问题。比如很多人建议:sudopeclinstallmongodb7.4版本也一起安装。我们现在以7.3版本为例。我使用源码编译安装。1.来自http://pecl.php.net/package/m...2.解压安装包tarzxfmongodb-1.7.2.tgz3.进入解压目录,运行phpize准备安装(phpize函数)cdmongodb-1.7.24.phpize7.3//注意这里要加版本号,不加版本号就是默认的php版本,本文是php7.45../configure--with-php-config=/usr/bin/php-config7.3//同上,必须加上版本号6.sudomake&&sudomakeinstall7.编译成功后,cd/etc/php/7.3/mods-availablesudocpzip.inimongodb.inisudovimmongodb。iniextension=mongodb.so##创建软链接sudoln-s/etc/php/7.3/mods-available/mongodb.ini/etc/php/7.3/fpm/conf.d/25-mongodb.ini//同样的操作,建立cli的软链接。为什么是25-?问题是mongodb.so依赖于json.so。解决方法是在json.so之后加载mongodb.so。这是安装mongodb扩展时遇到的坑,仅供参考,如有不妥,希望指正,欢迎指正
