2015-05-10 3 views
7

У меня возникла проблема с повторной установкой PHP через yum на моем сервере, размещенном цифровым океаном.Не удается установить пакет PHP на CentOS

У меня был установлен 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 

Я следовал this tutorial

Я немного застрял. Я попытался удалить httpd, повторно установить httpd, ничего, кажется, не исправить это. Я даже получаю ошибку, когда отключу remi и пытаюсь установить PHP 5.4.

Любые идеи о том, куда идти дальше?

Я бегу CentOS Linux релиз 7.1.1503 (ядро)

ответ

17

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

'sudo yum clean all', кажется, был ключом в моем случае –

0

Хотя это, вероятно, подходит Serverfault или PowerUser лучше, я все равно буду отвечать.

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

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

Затем вы можете установить каждый из ваших отдельных пакетов следующим образом:

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 
+0

Я просто делаю это :) Боюсь, что нет.Теперь я получаю следующее: http://pastebin.com/M2tAjH6K –

+0

Я только что запустил yum install php56w-common вручную, и он был установлен нормально, но теперь я получаю тот же старый «Required: httpd-mmn = 20051115» –

+0

I добавлю больше на почту, чтобы проверить, не работает ли она. – SysVoid

1

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

sudo yum clean all // to clear all caches 

после очистки кэша снова установить php70 с помощью:

sudo yum install php70 
Смежные вопросы