如何在Plesk中使用composer(使用其他版本的PHP运行Composer)

对于基于Plesk的服务器, composer的默认安装将使用系统安装的PHP版本, 而不使用Plesk所安装的任何版本。尽管Composer至少需要PHP 5.3.2+, 但是当你尝试在需要特定版本PHP的项目中安装依赖项时, 就会出现问题。例如, 如果你有一个至少需要PHP 7.2的项目, 并且系统的默认PHP安装是PHP 7.1, 则警告作曲家说你的系统不能满足所有依赖性, 因为你正在用PHP运行作曲家。 7.1, 但你需要PHP 7.2。知道你还随Plesk安装了PHP 7.2时, 这是非常有问题的!
通常, 每个开发人员都可以使用以下版本的系统PHP版本从命令行运行命令:

# For example install dependenciescomposer install# Or update them composer update

但是, 如果你在Plesk服务器上工作, 并且需要以其他版本运行composer, 则将需要执行一些额外的步骤才能毫无问题地运行它。
使用另一个Plesk PHP版本运行作曲家 首先, 你需要知道在基于Plesk的服务器上安装了哪些PHP版本, 因此运行以下命令以检索有关所有版本的简短回顾:
plesk bin php_handler --list

这将生成类似于以下内容的输出:
如何在Plesk中使用composer(使用其他版本的PHP运行Composer)

文章图片
在此服务器中, 我们有多个PHP版本, 其路径为:
/opt/plesk/php/5.2/bin/php/opt/plesk/php/5.3/bin/php/opt/plesk/php/5.4/bin/php/opt/plesk/php/5.6/bin/php/opt/plesk/php/7.1/bin/php/opt/plesk/php/7.2/bin/php

因此, 既然你知道可用的PHP版本, 就可以使用二进制文件从命令行运行composer.phar文件。但是, 在你需要知道Plesk中的composer.phar位置之前。根据系统的体系结构, 可以在以下位置找到文件:
# For 32-bits systems/usr/lib/plesk-9.0/composer.phar# For 64-bits systems/usr/lib64/plesk-9.0/composer.phar

在了解了这两个因素之后, 你现在可以使用以下技巧来运行composer命令。只需将PHP Cli二进制文件转换为第二个参数, 然后提供要运行的文件(本例中为composer.phar文件), 然后添加通常使用的指令即可:
/opt/plesk/php/< PHP VERSION> /bin/php /usr/lib/plesk-9.0/composer.phar [options] [arguments]

例如, 执行最常见的任务:
# Running "composer install" with PHP 7.2/opt/plesk/php/7.2/bin/php /usr/lib/plesk-9.0/composer.phar install# Running "composer update" with PHP 5.6/opt/plesk/php/5.6/bin/php /usr/lib/plesk-9.0/composer.phar update

有关更多信息, 请在此处访问Plesk支持网站上的问题。
【如何在Plesk中使用composer(使用其他版本的PHP运行Composer)】编码愉快!

    推荐阅读