Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php heroku安装gd扩展失败_Php_Heroku_Gd - Fatal编程技术网

Php heroku安装gd扩展失败

Php heroku安装gd扩展失败,php,heroku,gd,Php,Heroku,Gd,我正在尝试在heroku上安装gd(或)库 当我尝试使用composer安装它们时(我有如下所示) 我得到 Problem 1 - The requested PHP extension ext-gd * is missing from your system. Install or enable PHP's gd extension. 因此,尝试从apt-get安装(sudo-apt-get-install php7-gd),但我没有sudo权限,因为我不知道根heroku密码 有什么办法吗

我正在尝试在heroku上安装
gd
(或)库

当我尝试使用composer安装它们时(我有如下所示)

我得到

Problem 1
- The requested PHP extension ext-gd * is missing from your system. Install or enable PHP's gd extension.
因此,尝试从apt-get安装(
sudo-apt-get-install php7-gd
),但我没有sudo权限,因为我不知道根heroku密码

有什么办法吗

编辑

为了更好地解释我所做的工作,下面是完整的命令列表

$ heroku run bash
Running bash on ⬢ app... up, run.1644 (Free)
~ $ composer init


  Welcome to the Composer config generator  



This command will guide you through creating your composer.json config.

Package name (<vendor>/<name>) [app/app]: 
Description []: 
Author [, n to skip]: n
Minimum Stability []: 
Package Type (e.g. library, project, metapackage, composer-plugin) []: 
License []: 

Define your dependencies.

Would you like to define your dependencies (require) interactively [yes]? 
Search for a package: ext-gd

Found 15 packages matching ext-gd

   [0] stil/gd-text
   [1] gd/plesk-bundle
   [2] quince/persian-gd
   [3] xepan/gd-text
   [4] zgldh/gd-text-for-chinese
   [5] ext-calendar
   [6] ext-iconv
   [7] ext-dbus
   [8] ext-xml
   [9] ext-opendkim
  [10] ext-mcrypt
  [11] ext-openssl
  [12] ext-ssh2
  [13] ext-mongo
  [14] ext-mbstring

Enter package # to add, or the complete package name if it is not listed: ext-gd
Enter the version constraint to require (or leave blank to use the latest version): *
Search for a package: 
Would you like to define your dev dependencies (require-dev) interactively [yes]? no

{
    "name": "u11706/app",
    "require": {
        "ext-gd": "*"
    }
}

Do you confirm generation [yes]? 
~ $ composer update
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - The requested PHP extension ext-gd * is missing from your system. Install or enable PHP's gd extension.

~ $ composer update --ignore-platform-reqs
Loading composer repositories with package information
Updating dependencies (including require-dev)
Nothing to install or update
Writing lock file
Generating autoload files

这不是真正的Heroku问题,而是本地计算机的问题

您正在本地运行
composer update
以重新生成
composer.lock
。您的
composer.json
包含对
ext gd
的要求,因此您本地计算机的PHP安装必须启用该扩展,否则无法满足要求,composer将对此抛出错误


具体情况以及解决方法见-请仔细遵守此处的说明,在蓝色框中包含指示您运行
composer更新的注释--如果需要,请忽略平台需求。

通过
composer本地安装
,然后通过git存储库部署到heroku应用程序,解决了此问题

gd在Heroku上可用,您必须通过将以下行添加到composer.json(在require部分下)来启用它


在将代码推送到heroku之前,请确保在本地运行composer update,否则它将无法工作。

首先,您必须在本地绑定php

1。步骤 包含在composer.json中

{
  "require": {
      ..
      "ext-gd": "*",
      ...
   }
}
2。步骤 更新编写器

composer update
这需要时间……喝杯咖啡

3。步骤 使用heroku cli发布

git push heroku master
在pusblish上,注意输出,并检查是否有类似下面第5行的内容,如果有,则一切正常

1. remote: -----> PHP app detected
2. remote: -----> Bootstrapping...
3. remote: -----> Installing platform packages...
4. remote:        - php (7.3.6)
5. remote:        - ext-gd (bundled with php)
6. remote:        - apache (2.4.39)
7. remote:        - nginx (1.16.0)
8. remote: -----> Installing dependencies...

祝您编码愉快。

谢谢祖尔克。请参阅我的问题中的更改最终通过在本地使用composer安装解决了这个问题,然后再推送到heroku git存储库。非常感谢。
composer update
git push heroku master
1. remote: -----> PHP app detected
2. remote: -----> Bootstrapping...
3. remote: -----> Installing platform packages...
4. remote:        - php (7.3.6)
5. remote:        - ext-gd (bundled with php)
6. remote:        - apache (2.4.39)
7. remote:        - nginx (1.16.0)
8. remote: -----> Installing dependencies...