Heroku - 如何在 heroku php 应用程序上启用 gd?
Posted
技术标签:
【中文标题】Heroku - 如何在 heroku php 应用程序上启用 gd?【英文标题】:Heroku - how to enable gd on heroku php application? 【发布时间】:2015-02-07 10:17:49 【问题描述】:Heroku 说:
以下内置扩展已构建为“共享”,可以通过 composer.json 启用(括号中给出的内部标识符名称):
但它没有给出示例,我尝试使用以下composer.json:
"require":
"gd": "*"
但是当我git push heroku master
时,我得到:
我的 composer.json:
"require": "gd": "*"
但是当我git push heroku master
时,我得到:
-----> Installing dependencies...
Composer version 1.0.0-alpha9-19-g10401d5 2014-12-09 11:32:02
Loading composer repositories with package information
Installing dependencies
Your requirements could not be resolved to an installable set of packages.
Problem 1
- The requested package gd could not be found in any version, there may be a typo in the package name.
Potential causes:
- A typo in the package name
- The package is not available in a stable-enough version according to your minimum- stability setting
see <https://groups.google.com/d/topic/composer-dev/_g3ASeIFlrc/discussion> for more details.
Read <http://getcomposer.org/doc/articles/troubleshooting.md> for further common problems.
! Push rejected, failed to compile php app
如何在heroku上启用gd???
【问题讨论】:
【参考方案1】:试试看:
"require":
"ext-gd": "*"
看这里using-optional-extensions
【讨论】:
请注意,此解决方案应包含在项目根目录(与 .git 文件夹相同的目录)中的 .json 文本文件中。提交并推送这些更改,它们应该会生效。Problem 1 - The requested PHP extension ext-gd * is missing from your system. Install or enable PHP's gd extension.
我无法从 sudo 安装它,因为 sudo apt-get install php5.6-gd
说 sudo: command not found
谢谢!让我免于头疼! +1
修改后,你需要运行composer update
,这样你的修改才会反映在composer.lock中【参考方案2】:
仅在 composer 中添加 GD 作为依赖项 (require) 不会加载扩展 GD。它只是告诉这个包需要启用 gd。 "ext-gd" 只是一个虚拟包,并不真实存在。
您必须在您的平台上安装它。
看这里composer - platform-packages
【讨论】:
对于那些感到困惑的人:确保您已安装 php*.*-gd(请参阅***.com/q/2283199/4900327),然后在您的 repo 目录中运行composer update
,并可选择将 vendor/*
添加到您的 . gitignore
@abhidivekar 你如何在 heroku 上运行 apt-get?当我在heroku run bash
shell 中尝试 apt-get 时,我收到只读错误,无法安装。 php info 说编译了--with-gd=shared
,但令人困惑。
发现它与本地安装有关。
很好解释。这应该是正确的答案。谢谢以上是关于Heroku - 如何在 heroku php 应用程序上启用 gd?的主要内容,如果未能解决你的问题,请参考以下文章