最近、Amazon Linux AMIを使用してEC2インスタンスにLAMPサーバーを作成しました。
を使用して
Sudo yum install -y php70-Gd
Gd拡張機能をインストールしました。これはすべてうまくいき、PHPを使用して画像をアップロードおよび操作できました。
次のチュートリアルを使用して、Amazon Linux 2を使用するLAMPサーバーを作成しました: https://docs.aws.Amazon.com/AWSEC2/latest/UserGuide/ec2-lamp-Amazon-linux-2.html
私の問題は、Gd拡張機能が機能しないことです。使ってみた
Sudo yum install -y Gd
これは古いバージョンのGdをインストールしているようです。私は試した
Sudo yum install php-Gd
そして、これは拡張機能の最新バージョンをインストールするようです。
しかし、Gd拡張はまだ機能していないようです。 yum info Gdと入力すると、コンソールに次のように表示されます。
Loaded plugins: extras_suggestions, langpacks, priorities, update-motd
Installed Packages
Name : php-Gd
Arch : x86_64
Version : 7.2.5
Release : 3.amzn2.0.2
Size : 769 k
Repo : installed
From repo : amzn2extra-lamp-mariadb10.2-php7.2
Summary : A module for PHP applications for using the Gd graphics library
URL : http://www.php.net/
License : PHP and BSD
Description : The php-Gd package contains a dynamic shared object that will add
: support for using the Gd graphics library to PHP.
画像サイズ変更スクリプトを実行しようとすると、エラーが発生します。私はこのテストスクリプトを試しました:
$testGD = get_extension_funcs("Gd"); // Grab function list
if (!$testGD){ echo "Gd not installed."; exit; }
echo"<pre>".print_r($testGD,true)."</pre>";
そしてこれは私に結果を与えます
Gd not installed.
明らかに何かが正しくありません誰か助けてもらえますか?
ありがとう
何も問題がなく、再起動する必要がない場合もあります。拡張機能がphp.iniファイルに直接マッピングされていない場合があります。そのため、php.iniファイルで新しく追加された拡張機能(またはまだマップされていない拡張機能)をマップする必要がある場合があります。あなたのケースでは、追加
extension=Gd.so
一般に、
extension=<my_extension_name>.so
私のPHPバージョンは-PHP 7.2.18 $ php -v
-y php72-Gdをインストールする必要がありました
$ Sudo yum update -y
$ Sudo yum install -y php72-Gd
$ Sudo reboot