Не удается установить пакет PHP на CentOS

у меня возникли проблемы с повторной установкой PHP через yum на моем сервере, размещенном в digital ocean.

У меня был установлен PHP 5.4, но хотел 5.6. Я добавил / включил РЕПО remi, ran 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 release 7.1.1503 (Core)

3 ответов


Я все исправила! Проблема заключалась в том, что у меня была установлена неправильная версия 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

Я также столкнулся с той же проблемой при установке php70w(webstatic) на моей машине linux. Следующая команда помогла мне установить php70

sudo yum clean all   // to clear all caches

после очистки кэша снова установите php70, используя:

sudo yum install php70

хотя это, вероятно, подходит serverfault или poweruser лучше, я все равно отвечу.

это основано на опыте и работает каждый раз, если сделано в соответствии с инструкциями.

для установки сначала необходимо добавить репозиторий Webtatic EL yum информация, соответствующая вашей версии CentOS / RHEL для 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