无法在远程服务器上 运行 composer 命令
Can't run composer command on remote server
在远程服务器 (VPS) 上安装 Symfony 供应商时遇到问题,因为在通过服务器管理安装 composer 库后,我在 运行 时出现 PHP 致命错误:
PHP Fatal error: Uncaught ErrorException: proc_close() has been disabled for security reasons in phar:///usr/local/bin/composer/vendor/symfony/console/Application.php:957
Stack trace:
#0 [internal function]: Composer\Util\ErrorHandler::handle(2, 'proc_close() ha...', 'phar:///usr/loc...', 957, Array)
#1 phar:///usr/local/bin/composer/vendor/symfony/console/Application.php(957): proc_close(Resource id #252)
#2 phar:///usr/local/bin/composer/vendor/symfony/console/Application.php(753): Symfony\Component\Console\Application->getSttyColumns()
#3 phar:///usr/local/bin/composer/vendor/symfony/console/Application.php(714): Symfony\Component\Console\Application->getTerminalDimensions()
#4 phar:///usr/local/bin/composer/vendor/symfony/console/Application.php(648): Symfony\Component\Console\Application->getTerminalWidth()
#5 phar:///usr/local/bin/composer/vendor/symfony/console/Application.php(127): Symfony\Component\Console\Application->renderException(Object(ErrorException), Object(Symfony\Component\Console\Output\StreamOutput))
#6 p in phar:///usr/local/bin/composer/vendor/symfony/console/Application.php on line 957
有PHP 7.3.15
memory_limit => 1024M
disable_functions => exec,system,passthru,shell_exec,proc_close,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname => exec,system,passthru,shell_exec,proc_close,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
也许有人有什么想法?
有多种方式:
- 联系您的托管来源以允许您。
- Push/Deploy 来自本地的供应商这样您就不需要 运行 任何作曲家命令。
如果您在共享云服务中部署,由于您的实例可用的资源有限,该过程将无法运行。我会建议您在您的开发实例上进行作曲家更新或安装,并将压缩的文件传输到主机
在远程服务器 (VPS) 上安装 Symfony 供应商时遇到问题,因为在通过服务器管理安装 composer 库后,我在 运行 时出现 PHP 致命错误:
PHP Fatal error: Uncaught ErrorException: proc_close() has been disabled for security reasons in phar:///usr/local/bin/composer/vendor/symfony/console/Application.php:957
Stack trace:
#0 [internal function]: Composer\Util\ErrorHandler::handle(2, 'proc_close() ha...', 'phar:///usr/loc...', 957, Array)
#1 phar:///usr/local/bin/composer/vendor/symfony/console/Application.php(957): proc_close(Resource id #252)
#2 phar:///usr/local/bin/composer/vendor/symfony/console/Application.php(753): Symfony\Component\Console\Application->getSttyColumns()
#3 phar:///usr/local/bin/composer/vendor/symfony/console/Application.php(714): Symfony\Component\Console\Application->getTerminalDimensions()
#4 phar:///usr/local/bin/composer/vendor/symfony/console/Application.php(648): Symfony\Component\Console\Application->getTerminalWidth()
#5 phar:///usr/local/bin/composer/vendor/symfony/console/Application.php(127): Symfony\Component\Console\Application->renderException(Object(ErrorException), Object(Symfony\Component\Console\Output\StreamOutput))
#6 p in phar:///usr/local/bin/composer/vendor/symfony/console/Application.php on line 957
有PHP 7.3.15
memory_limit => 1024M
disable_functions => exec,system,passthru,shell_exec,proc_close,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname => exec,system,passthru,shell_exec,proc_close,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
也许有人有什么想法?
有多种方式:
- 联系您的托管来源以允许您。
- Push/Deploy 来自本地的供应商这样您就不需要 运行 任何作曲家命令。
如果您在共享云服务中部署,由于您的实例可用的资源有限,该过程将无法运行。我会建议您在您的开发实例上进行作曲家更新或安装,并将压缩的文件传输到主机