Amazon EC2インスタンス(Amazon Linux 2)にZipArchiveを必要とするCMSをインストールしています。要件ウィザードには、ZipArchiveはサポートされていないと表示されます。
しかし、オンラインで見つけた手順に従ってZipArchiveをインストールしようとすると、サーバーはすでにインストールされていると通知します。
[ec2-user@ip-***-**-**-** ~]$ Sudo yum install php-Zip
Loaded plugins: langpacks, priorities, update-motd
amzn2-core | 2.0 kB 00:00:00
Package matching php-common-5.4.16-43.amzn2.0.1.x86_64 already installed. Checking for update.
Nothing to do
Httpdサービスを再起動しました。
私も試しました:
[ec2-user@ip-***-**-**-** ~]$ Sudo yum install php7.0-Zip
Loaded plugins: langpacks, priorities, update-motd
amzn2-core | 2.0 kB 00:00:00
No package php7.0-Zip available.
Error: Nothing to do
私も追加してみました:
extension=Zip.so
Php.iniに移動し、httpdサービスを再起動しました。まだ喜びはありません。
ZipArchiveのPHPマニュアルでは、「これらの関数を使用するには、-enable-Zip構成オプションを使用してZipサポートを使用してPHPをコンパイルする必要があります。 。 "これをどこで、いつ行うかわかりません。単に使用しただけです。
yum install php php-mysql
PHPをインストールするには。
これを解決しようとほぼ一日、私はここからどこへ行くのか途方に暮れています。誰かが私を正しい方向に向けることができますか?
Remiのリポジトリを使用している場合、Zipモジュールがpecl拡張機能であることに気付きました。そのため、Zip実行をインストールして有効にします。
Sudo yum -y install php-pecl-Zip
次に、php-fpmを再起動します。NGINXを使用しているか、Apacheを再起動します。
Sudo service php-fpm restart
Sudo service httpd restart
レミリポジトリをインストールできます
**RHEL or CentOS**
yum install yum-utils
yum-config-manager --enable remi-php72
Laravelをインストールしようとして同じ問題(Amazon Linux 2 AMI)が発生しました。問題は、このAMIがlibzip 0.10.1を使用し、少なくとも0.11が必要であり、拡張フォルダー(このAMI:/ usr/lib64/php/modules)をチェックインすると、ファイルZip.soが見つからないことです。したがって、php.iniファイルで拡張子を有効にすると、Apacheのログにエラーが記録されます。 RemiのRPMリポジトリを使用してlibzip1.1.3をインストールすることで問題を解決しました。これは私がしたことです:
リポジトリからlibzipをインストールします。新しいlibzipバージョンを確認できます。
$ yum list "*libzip*"
Installed Packages
libzip-last.x86_64 1.1.3-1.el7.remi installed
互換性のあるlibzipができたので、Zip拡張機能をコンパイルできます。tmpフォルダーの [〜#〜] pecl [〜#〜] からパッケージをダウンロードし、ファイルを抽出して、パッケージルートから:
$ Sudo phpize
$ Sudo ./configure
$ Sudo make
$ Sudo make install
make installコマンドの後、出力は次のようになります。
Installing shared extensions: /usr/lib64/php/modules/
そのディレクトリに移動すると、最終的にZip.soファイルが表示されます。
Php.iniを追加して変更します
extension=Zip
Webサーバーを再起動し、PHP情報を確認します。これは私が私の中で見るものです:
Zip enabled
Zip version 1.15.2
Libzip version 0.11.2
私の場合、laravelをインストールすることができました。
Centos7とPHP 7.3でも同様の問題が発生しました。
次の方法で解決できました:
Sudo yum install php-pecl-Zip.