如何在Heroku上安装GD

qf9go6mv  于 2022-11-13  发布在  其他
关注(0)|答案(4)|浏览(188)

我正在运行Laravel 5.3并尝试进行一些图像处理。我得到以下错误:GD库扩展在此PHP安装中不可用。
我试过把gd放到我的composer.json里

"require": {
    "php": ">=5.6.4",
    "laravel/framework": "5.3.*",
    "mews/purifier": "~2.0",
    "vinkla/hashids": "^2.4",
    "barryvdh/laravel-debugbar": "^2.2",
    "fzaninotto/faker": "~1.4",
    "intervention/image": "^2.3",
    "gd": "*"
},

但没有成功。我也试过

"ext-gd": "*"

我看了看https://devcenter.heroku.com/articles/php-support这页上面写着:
下面的内置扩展是“共享”的,可以通过composer.json(括号中给出的内部标识符名称)启用。
GD(钆)

bpsygsoo

bpsygsoo1#

"gd": "*"添加到composer.json并执行composer update
如果不起作用,添加"ext-gd":" *"并更新作曲器

pftdvrlh

pftdvrlh2#

我运行了**composer require ext-gd**和git push heroku master,它确实起作用了。
我尝试将"gd": "*"添加到composer.json并执行composer update,但推送到Heroku时遇到Class 'Symfony\Component\HttpFoundation\InputBag' not found错误。我认为这不仅仅是用composer update更新ext-gd

qcuzuvrc

qcuzuvrc3#

在composer.json文件中

"require": {
        "facade/ignition": "^2.3.6",
        "fzaninotto/faker": "^1.9.1",
        "mockery/mockery": "^1.3.1",
        "nunomaduro/collision": "^5.0",
        "phpunit/phpunit": "^9.3",
        "ext-gd": "*"

    },

更新编写器并推送到原始分支

composer update

git add .

git commit -m "message"

git push origin <branch name>

在Heroku重建您的项目

https://devcenter.heroku.com/articles/php-support#extensions

6qftjkof

6qftjkof4#

我做了同样的指示,但我有这个问题后,我运行 composer 更新heroku。
您的需求无法解析为可安装的套件集。
问题1 -根composer.json需要PHP扩展ext-gd *,但您的系统中缺少该扩展。请安装或启用PHP的gd扩展。
要启用扩展,请验证是否在.ini文件中启用了扩展:

- /app/.heroku/php/etc/php/php-cli.ini
 - /app/.heroku/php/etc/php/conf.d/000-heroku.ini
 - /app/.heroku/php/etc/php/conf.d/010-ext-zend_opcache.ini
 - /app/.heroku/php/etc/php/conf.d/100-ext-mbstring.ini

您还可以在终端中运行php --ini,以查看PHP在CLI模式下使用了哪些文件。
或者,您可以使用--ignore-platform-req=ext-gd运行Composer,以暂时忽略这些必需的扩展。

相关问题