Установка php5.6.2 с помощью httpd24 (версия Apache версии 2.4.10) на centos / rhel

используя это репо: http://dl.iuscommunity.org/pub/ius/stable/CentOS/6/x86_64/ius-release-1.0-13.ius.centos6.noarch.rpm для установки php, и для apache я использование amazon linux repo

текущая версия php:

$ php -v PHP 5.6.2 (cli) (built: Nov 4 2014 10:01:39) Copyright (c) 1997-2014 The PHP Group Zend Engine v2.6.0, Copyright (c) 1998-2014 Zend Technologies 

текущая версия apache:

 $ httpd -v Server version: Apache/2.4.10 (Amazon) Server built: Jul 30 2014 23:57:26 

все в порядке до этого уровня

пакеты, установленные для php:

 $ yum list installed | grep php php56u-bcmath.x86_64 5.6.2-3.ius.centos6 @ius php56u-cli.x86_64 5.6.2-3.ius.centos6 @ius php56u-common.x86_64 5.6.2-3.ius.centos6 @ius php56u-devel.x86_64 5.6.2-3.ius.centos6 @ius php56u-embedded.x86_64 5.6.2-3.ius.centos6 @ius php56u-enchant.x86_64 5.6.2-3.ius.centos6 @ius php56u-gd.x86_64 5.6.2-3.ius.centos6 @ius php56u-imap.x86_64 5.6.2-3.ius.centos6 @ius php56u-intl.x86_64 5.6.2-3.ius.centos6 @ius php56u-ldap.x86_64 5.6.2-3.ius.centos6 @ius php56u-mbstring.x86_64 5.6.2-3.ius.centos6 @ius php56u-mcrypt.x86_64 5.6.2-3.ius.centos6 @ius php56u-mysqlnd.x86_64 5.6.2-3.ius.centos6 @ius php56u-pdo.x86_64 5.6.2-3.ius.centos6 @ius php56u-pear.noarch 1:1.9.5-1.ius.centos6 @ius php56u-pecl-jsonc.x86_64 1.3.6-3.ius.centos6 @ius php56u-pecl-jsonc-devel.x86_64 1.3.6-3.ius.centos6 @ius php56u-pgsql.x86_64 5.6.2-3.ius.centos6 @ius php56u-process.x86_64 5.6.2-3.ius.centos6 @ius php56u-pspell.x86_64 5.6.2-3.ius.centos6 @ius php56u-recode.x86_64 5.6.2-3.ius.centos6 @ius php56u-snmp.x86_64 5.6.2-3.ius.centos6 @ius php56u-soap.x86_64 5.6.2-3.ius.centos6 @ius php56u-tidy.x86_64 5.6.2-3.ius.centos6 @ius php56u-xml.x86_64 5.6.2-3.ius.centos6 @ius 

Установленные пакеты для apache:

 $ yum list installed | grep http httpd24.x86_64 2.4.10-1.59.amzn1 @amzn-main httpd24-tools.x86_64 2.4.10-1.59.amzn1 @amzn-main 

теперь, когда я пытаюсь установить php-расширение для apache с именем php56u.x86_64

Бывает

 $ yum install php56u.x86_64 Loaded plugins: priorities, update-motd, upgrade-helper amzn-main/latest | 2.1 kB 00:00 amzn-updates/latest | 2.3 kB 00:00 4361 packages excluded due to repository priority protections Resolving Dependencies --> Running transaction check ---> Package php56u.x86_64 0:5.6.2-3.ius.centos6 will be installed --> Processing Dependency: httpd-mmn = 20051115 for package: php56u-5.6.2-3.ius.centos6.x86_64 --> Running transaction check ---> Package httpd.x86_64 0:2.2.29-1.4.amzn1 will be installed --> Processing Dependency: httpd-tools = 2.2.29-1.4.amzn1 for package: httpd-2.2.29-1.4.amzn1.x86_64 --> Running transaction check ---> Package httpd-tools.x86_64 0:2.2.29-1.4.amzn1 will be installed --> Processing Conflict: httpd24-2.4.10-1.59.amzn1.x86_64 conflicts httpd < 2.4.10 --> Processing Conflict: httpd24-tools-2.4.10-1.59.amzn1.x86_64 conflicts httpd-tools < 2.4.10 --> Finished Dependency Resolution Error: httpd24-tools conflicts with httpd-tools-2.2.29-1.4.amzn1.x86_64 Error: httpd24 conflicts with httpd-2.2.29-1.4.amzn1.x86_64 You could try using --skip-broken to work around the problem You could try running: rpm -Va --nofiles --nodigest` 

Похоже, php56u из IUS для Apache 2.2 не 2.4, поэтому он пытается установить httpd.x86_64 0:2.2.29-1.4 (Apache 2.2.29) и все связанные с ним инструменты ( httpd-tools.x86_64 0:2.2.29-1.4 ).

Однако эти два конфликтуют с httpd24-2.4.10-1.59 которые вы установили из репозитория Amazon.

Попробуйте REMI repo – я считаю, что у него есть как PHP 5.6, так и Apache 2.4 для CentOS 6

Если он подходит к счету, тогда вам будет разумно удалить репозитории IUS и Amazon и их пакеты и начать снова.

Если это не работает, некоторые из ваших вариантов:

  • Найдите другое репо с Apache и PHP в требуемых версиях. Я считаю, что Fedora 21 имеет это. Проблема заключается в том, что вы можете перетащить много зависимостей, в результате чего ваша система станет гибридной установкой CentOS-6 / Fedora-21, которая может быть монстром для администрирования (как вы уже выяснили).

  • Создайте файл спецификации RPM и создайте свой собственный RPM или используйте сервис, например Copr, для создания RPM для вас. Создание RPM означает, что его будет проще удалить позднее.

  • Создайте PHP 5.6 из источника для работы с Apache 2.4

  • Подождите, пока репо будет обновлено до требуемых версий.