今天在使用composer安装扩展包时报错:PHP Fatal error: Allowed memory size of 1610612736 bytes exhausted (tried to allocate 4096 bytes)
原因:允许的内存大小已用尽,也就是内存溢出造成的
查看内存配置信息:
php -r "echo ini_get('memory_limit').PHP_EOL;"
方法一:
既然是内存不足,那就改大。
以宝塔为例:
(1)软件商店 > 已安装 > php版本对应的设置
(2)配置修改 > 修改memory_limit值(修改大一点)> 保存
或者:配置文件 > Ctrl+F搜索memory_limit回车 > 修改(修改大一点,也可以修改为 -1)> 保存
(注意:不是宝塔的自己找到php.ini配置文件,修改大一点,或者修改为 -1,当然值可以根据自己的情况改动,也不要太大,否则系统其它资源会遇到问题,其中-1为不设限。)
重启服务
composer 可正常运行了,但是不安全,在这里不推荐使用。
方法二:推荐方法
就是使用命令安装,无视内存限制
(1)使用 composer -h
命令获取composer安装地址
(2)php -d memory_limit=-1 composer require命令安装,如
php -d memory_limit=-1 /usr/bin/composer require xxxxx/xxxxxxx
上述命令中的/usr/bin/composer,为composer安装地址,(1)中获取
可以正常安装了