DigitalOceanがホストするサーバーにyum経由でPHPを再インストールするのに問題があります。
PHP 5.4をインストールしましたが、5.6が必要でした。レミリポジトリを追加/有効化し、yum -y remove php*
を実行してから、phpを再インストールしようとしました。
yum -y install php
を実行すると、次のようになります。
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.centos.webair.com
* epel: mirrors.coreix.net
* extras: mirrors.centos.webair.com
* remi: remi.check-update.co.uk
* remi-php56: remi.check-update.co.uk
* updates: mirrors.centos.webair.com
* webtatic: uk.repo.webtatic.com
Resolving Dependencies
--> Running transaction check
---> Package php.x86_64 0:5.6.8-1.el6.remi will be installed
--> Processing Dependency: php-common(x86-64) = 5.6.8-1.el6.remi for package: php-5.6.8-1.el6.remi.x86_64
--> Processing Dependency: php-cli(x86-64) = 5.6.8-1.el6.remi for package: php-5.6.8-1.el6.remi.x86_64
--> Processing Dependency: httpd-mmn = 20051115 for package: php-5.6.8-1.el6.remi.x86_64
--> Running transaction check
---> Package php.x86_64 0:5.6.8-1.el6.remi will be installed
--> Processing Dependency: httpd-mmn = 20051115 for package: php-5.6.8-1.el6.remi.x86_64
---> Package php-cli.x86_64 0:5.6.8-1.el6.remi will be installed
---> Package php-common.x86_64 0:5.6.8-1.el6.remi will be installed
--> Processing Dependency: php-pecl-Zip(x86-64) for package: php-common-5.6.8-1.el6.remi.x86_64
--> Processing Dependency: php-pecl-jsonc(x86-64) for package: php-common-5.6.8-1.el6.remi.x86_64
--> Running transaction check
---> Package php.x86_64 0:5.6.8-1.el6.remi will be installed
--> Processing Dependency: httpd-mmn = 20051115 for package: php-5.6.8-1.el6.remi.x86_64
---> Package php-pecl-jsonc.x86_64 0:1.3.7-1.el6.remi.5.6 will be installed
---> Package php-pecl-Zip.x86_64 0:1.12.5-1.el6.remi.5.6 will be installed
--> Finished Dependency Resolution
Error: Package: php-5.6.8-1.el6.remi.x86_64 (remi-php56)
Requires: httpd-mmn = 20051115
Installed: httpd-2.4.6-31.el7.centos.x86_64 (@base)
httpd-mmn = 20120211
httpd-mmn = 20120211x8664
httpd-mmn = 20120211-x86-64
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
私はフォローしています このチュートリアル
私は少し立ち往生しています。 httpdを削除し、httpdを再インストールしようとしましたが、これを修正するものは何もないようです。 remiを無効にしてインストールしようとすると、エラーが発生することもありますPHP 5.4。
ここからどこへ行くべきかについてのアイデアはありますか?
CentOS Linuxリリース7.1.1503(コア)を実行しています
それを私が直した!問題は、間違ったバージョンのELがインストールされていることでした。余分なリポジトリをすべて削除し、すべてのphpパッケージを削除し、httpdを削除しました。以下を実行しました:
yum install epel-release
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
yum clean
yum update
その後、以下を使用してPHP
yum install php56w php56w-opcache php56w-mcrypt php56w-pdo php56w-mysql
Linuxマシンにphp70w(webstatic)をインストールしているときにも同じ問題が発生しました。次のコマンドは、php70をインストールするのに役立ちました
Sudo yum clean all // to clear all caches
キャッシュをクリアした後、以下を使用してphp70を再度インストールします。
Sudo yum install php70
これはおそらくserverfaultまたはpoweruserに適していますが、それでも答えます。
これは経験に基づいており、指示どおりに実行すれば毎回機能します。
インストールするには、最初に、CentOS/RHELバージョンに対応するWebtaticELyumリポジトリ情報をyumに追加する必要があります。
CentOS/RHEL 7.x:
rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpm rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
次に、次のように個々のパッケージをそれぞれインストールできます。
yum install php56w-<package name>
ただし、php56wプレフィックスを忘れないでください。
ソース: https://webtatic.com/packages/php56/
これを試してください(コメントに関して):
yum update -y; yum remove httpd && yum install httpd; yum install php56w-common php56w-opcache php56w-mysql