proc_open(): fork failed – Cannot allocate memory【解决方法】

proc_open():fork失败错误

如果composer在执行某些命令中显示proc_open()fork失败:

PHP Fatal error: Uncaught exception 'ErrorException' with message 'proc_open(): fork failed - Cannot allocate memory' in phar

这可能会发生,因为VPS内存不足并且没有启用交换空间,查看内存。

free -m

total used free shared buffers cached
Mem: 2048 357 1690 0 0 237
-/+ buffers/cache: 119 1928
Swap: 0 0 0

要启用交换,您可以使用例如下面命令解决问题:

/bin/dd if=/dev/zero of=/var/swap.1 bs=1M count=1024
/sbin/mkswap /var/swap.1
/sbin/swapon /var/swap.1

您可以按照本教程制作永久交换文件。

原文参考:https://getcomposer.org/doc/articles/troubleshooting.md#proc-open-fork-failed-errors