【问题标题】:How to force PHP extension in PHP Buildpack in Bluemix?如何在 Bluemix 的 PHP Buildpack 中强制 PHP 扩展?
【发布时间】:2017-05-18 13:55:01
【问题描述】:

我们有一个在 PHP5 中运行的应用程序(带有 MongoDB 的 Symfony 2.8),但是我们在这个版本中的 Mongo 驱动程序存在问题,而 PHP7 和 ext-mongodb 则没有。所以我正在尝试将项目迁移到 PHP7。

在本地一切正常,但在 Bluemix 上我们遇到了这个问题:

Your requirements could not be resolved to an installable set of packages.
  Problem 1
    - The requested PHP extension ext-mongodb ^1.2 has the wrong version (1.1.2) installed. Install or enable PHP's mongodb extension.
...

某些依赖项需要此扩展和版本,但我无法通过 composer 安装它。依赖在 composer.json 中是明确的:

    "require": {
        "php": "7.0.*",
        "ext-mongodb": "*",
        ...

我去了 php-buildpack 项目,看看在 php-buildpack 4.3.10 中提供的扩展版本是什么(这是 Bluemix 当前使用的版本,它是旧的!!!!),但是没有版本,只是对可用扩展的说明:

https://github.com/cloudfoundry/php-buildpack/releases/tag/v4.3.10

如何获取 ext-mongodb 的 1.2.0 版本?

谢谢!

【问题讨论】:

  • 可以使用更新版本的 buildpack。在您的 cf push 中,您指定 buildpack URL,例如 -b https://github.com/cloudfoundry/php-buildpack.git#v4.3.33
  • 您好,自从我发布问题以来,这就是我正在做的事情,但是我对使用社区版本并不放心。如果这是唯一的解决方案,我会选择它。但是,同一个应用程序不适用于 4.3.33 版本的 buildpack,并且没有日志知道会发生什么......

标签: php mongodb composer-php ibm-cloud cloud-foundry


【解决方案1】:

我有来自 github 的 cloudfoundry php-buildpack 的测试仪,最新版本是 4.3.33(相对于 Bluemix 上的 4.3.10),它根本不工作。应用程序正在运行,但未执行,并且没有日志。

但是,我已经尝试了 4.3.30 版本,并且运行良好。

我想这是运行最新版本的 php-buildpack 而不是尝试更新旧版本的最佳解决方案...

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-16
    • 1970-01-01
    相关资源
    最近更新 更多