【问题标题】:Composer & Plesk, encountering PHP version difficultiesComposer & Plesk,遇到PHP版本难题
【发布时间】:2018-10-11 12:53:23
【问题描述】:

我目前正试图让我的 Laravel 应用程序在 Plesk Onyx 后面运行。现在尝试运行composer install 时,我收到以下错误消息:

Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - Installation request for doctrine/inflector v1.3.0 -> satisfiable by doctrine/inflector[v1.3.0].
    - doctrine/inflector v1.3.0 requires php ^7.1 -> your PHP version (7.0.27) does not satisfy that requirement.
  Problem 2
    - Installation request for symfony/css-selector v4.0.6 -> satisfiable by symfony/css-selector[v4.0.6].
    - symfony/css-selector v4.0.6 requires php ^7.1.3 -> your PHP version (7.0.27) does not satisfy that requirement.
  Problem 3
    - Installation request for symfony/event-dispatcher v4.0.6 -> satisfiable by symfony/event-dispatcher[v4.0.6].
    - symfony/event-dispatcher v4.0.6 requires php ^7.1.3 -> your PHP version (7.0.27) does not satisfy that requirement.
  Problem 4
    - Installation request for symfony/translation v4.0.6 -> satisfiable by symfony/translation[v4.0.6].
    - symfony/translation v4.0.6 requires php ^7.1.3 -> your PHP version (7.0.27) does not satisfy that requirement.
  Problem 5
    - Installation request for doctrine/instantiator 1.1.0 -> satisfiable by doctrine/instantiator[1.1.0].
    - doctrine/instantiator 1.1.0 requires php ^7.1 -> your PHP version (7.0.27) does not satisfy that requirement.
  Problem 6
    - doctrine/inflector v1.3.0 requires php ^7.1 -> your PHP version (7.0.27) does not satisfy that requirement.
    - laravel/framework v5.5.39 requires doctrine/inflector ~1.1 -> satisfiable by doctrine/inflector[v1.3.0].
    - Installation request for laravel/framework v5.5.39 -> satisfiable by laravel/framework[v5.5.39].

好的。我肯定理解错误。我运行 Debian 9,“PHP by OS Vendor”是7.0.27。但是,我知道服务器上安装了 PHP 7.1+(甚至 7.2),因为 Plesk 会让我选择(对于域和虚拟主机)这些版本。我现在的问题是:我如何告诉作曲家使用服务器上安装的某个 PHP 版本,以及如何在 Debian 和 Plesk 下工作?

编辑:我没有全局安装 Composer。只需https://getcomposer.org/download/“命令行安装”。

【问题讨论】:

    标签: php laravel composer-php plesk debian-stretch


    【解决方案1】:

    方法如下:

    查找 Plesk 使用的 PHP 路径。就我而言,这是/opt/plesk/php/。在这个文件夹中,根据安装的 PHP 版本有文件夹:7.07.17.2。所以php composer.phar install 变成了/opt/plesk/php/7.2/bin/php composer.phar install。 & 有用。 :-)

    【讨论】:

      【解决方案2】:

      您可以使用composer.json 中的platform 设置来模拟PHP 版本:

      "config": {
          "platform": {
              "php": "7.1"
          }
      },
      

      Composer 会在安装和更新期间假定 PHP 版本为 7.1,即使您使用 7.0 进行实际安装也是如此。

      这只会影响 Composer 的安装和更新 - 如果您想运行应用程序的控制台命令,您将需要使用正确的二进制文件(对于 Web 服务器也是如此)。但是,设置此项将使您的 Composer 安装和更新更加可预测,因此无论如何都值得这样做。

      【讨论】:

        猜你喜欢
        • 2017-12-17
        • 2020-03-26
        • 1970-01-01
        • 2011-07-31
        • 2018-03-28
        • 1970-01-01
        • 2017-07-09
        • 2016-08-04
        • 2020-02-02
        相关资源
        最近更新 更多