Je ne parviens pas à réinstaller PHP via yum sur mon serveur hébergé par Digital Ocean.
J'avais PHP5.4 installé, mais je voulais 5.6. J'ai ajouté/activé le dépôt de remi, lancé yum -y remove php*
puis essayé de réinstaller php.
Quand j’exécute yum -y install php
j’obtiens ce qui suit:
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
J'ai suivi ce tutoriel
Je suis un peu coincé. J'ai essayé de supprimer httpd, de réinstaller httpd, rien ne semble résoudre ce problème. Je reçois même le message d'erreur lorsque je désactive Remi et que j'essaie d'installer PHP 5.4.
Des idées sur où aller d'ici?
J'exécute la version 7.1.1503 de CentOS Linux (Core)
Je l'ai corrigé! Le problème était que j'avais la mauvaise version d'EL installée. J'ai supprimé tous mes dépôts supplémentaires, supprimé tous les paquets php, supprimé httpd. .
yum install epel-release
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
yum clean
yum update
J'ai ensuite pu installer PHP à l'aide de ce qui suit
yum install php56w php56w-opcache php56w-mcrypt php56w-pdo php56w-mysql
J'ai également rencontré le même problème lors de l'installation de php70w (webstatic) sur ma machine Linux. La commande suivante m'a aidé à installer php70
Sudo yum clean all // to clear all caches
après avoir vidé le cache, installez à nouveau php70 en utilisant:
Sudo yum install php70
Bien que cela convienne probablement mieux à serverfault ou à poweruser, je répondrai quand même.
Ceci est basé sur l'expérience et fonctionne à chaque fois si cela est fait comme indiqué.
Pour l’installer, vous devez d’abord ajouter les informations du référentiel Webtatic EL yum Correspondant à votre version de CentOS/RHEL:
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
Ensuite, vous pouvez installer chacun de vos paquets individuels comme ceci:
yum install php56w-<package name>
N'oubliez pas le préfixe php56w.
Source: https://webtatic.com/packages/php56/
Essayez ceci (en ce qui concerne les commentaires):
yum update -y; yum remove httpd && yum install httpd; yum install php56w-common php56w-opcache php56w-mysql