Ошибка при установке php-soap на PHP 5.4.20 Centos 6

0

Я пытаюсь установить php-soap на моем Centos 6.6. Я запускаю PHP 5.4.20. Когда я делаю "yum install php-soap", я получаю эту ошибку:

Loaded plugins: fastestmirror, security
Setting up Install Process
Loading mirror speeds from cached hostfile
* base: centos.openitc.uk
* epel: epel.check-update.co.uk
* extras: centos.openitc.uk
* rpmforge: mirror.nl.leaseweb.net
* updates: centos.openitc.uk
* webtatic: us-east.repo.webtatic.com
Resolving Dependencies
--> Running transaction check
---> Package php-soap.x86_64 0:5.3.3-40.el6_6 will be installed
--> Processing Dependency: php-common(x86-64) = 5.3.3-40.el6_6 for package: php-soap-5.3.3-40.el6_6.x86_64
--> Finished Dependency Resolution
Error: Package: php-soap-5.3.3-40.el6_6.x86_64 (updates)
       Requires: php-common(x86-64) = 5.3.3-40.el6_6
       Installed: php-common-5.4.20-1.el6.remi.x86_64 (@remi)
           php-common(x86-64) = 5.4.20-1.el6.remi
       Available: php-common-5.3.3-38.el6.x86_64 (base)
           php-common(x86-64) = 5.3.3-38.el6
       Available: php-common-5.3.3-40.el6_6.x86_64 (updates)
           php-common(x86-64) = 5.3.3-40.el6_6
       Available: php54w-common-5.4.36-1.w6.x86_64 (webtatic)
           php-common(x86-64) = 5.4.36-1.w6
       Available: php54w-common-5.4.37-1.w6.x86_64 (webtatic)
           php-common(x86-64) = 5.4.37-1.w6
       Available: php54w-common-5.4.38-1.w6.x86_64 (webtatic)
           php-common(x86-64) = 5.4.38-1.w6
       Available: php55w-common-5.5.20-1.w6.x86_64 (webtatic)
           php-common(x86-64) = 5.5.20-1.w6
       Available: php55w-common-5.5.21-1.w6.x86_64 (webtatic)
           php-common(x86-64) = 5.5.21-1.w6
       Available: php55w-common-5.5.22-1.w6.x86_64 (webtatic)
           php-common(x86-64) = 5.5.22-1.w6
       Available: php56w-common-5.6.4-1.w6.x86_64 (webtatic)
           php-common(x86-64) = 5.6.4-1.w6
       Available: php56w-common-5.6.5-1.w6.x86_64 (webtatic)
           php-common(x86-64) = 5.6.5-1.w6
       Available: php56w-common-5.6.6-1.w6.x86_64 (webtatic)
           php-common(x86-64) = 5.6.6-1.w6
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest

Как мне обойти это? У меня установлены эти модули PHP:

php-tcpdf-dejavu-sans-fonts-6.2.4-1.el6.noarch
newrelic-php5-4.18.0.89-1.x86_64
php-cli-5.4.20-1.el6.remi.x86_64
php-mcrypt-5.4.20-1.el6.remi.x86_64
php-gd-5.4.20-1.el6.remi.x86_64
phpMyAdmin-4.0.7-1.el6.remi.noarch
php-pear-1.9.4-4.el6.noarch
php-tcpdf-6.2.4-1.el6.noarch
php-common-5.4.20-1.el6.remi.x86_64
php-mbstring-5.4.20-1.el6.remi.x86_64
php-bcmath-5.4.20-1.el6.remi.x86_64
php-pdo-5.4.20-1.el6.remi.x86_64
php-pecl-memcache-3.0.8-1.el6.remi.x86_64
php-php-gettext-1.0.11-3.el6.noarch
newrelic-php5-common-4.18.0.89-1.noarch
php-xml-5.4.20-1.el6.remi.x86_64
php-mysql-5.4.20-1.el6.remi.x86_64
php-recode-5.4.20-1.el6.remi.x86_64
php-tidy-5.4.20-1.el6.remi.x86_64
php-5.4.20-1.el6.remi.x86_64

Это идея удалить PHP 5.4 и установить PHP 5.3.3? Я не уверен, что мои сайты могут запускать PHP 5.5.

Спасибо за любые предложения!

  • 0
    Пожалуйста, проверьте это: stackoverflow.com/questions/27866607/…
  • 0
    Спасибо, я думаю, что это решит мою проблему. Знаете ли вы, если это хорошо, чтобы установить PHP из Webtatic?
Теги:
soap

4 ответа

0
   Installed: php-common-5.4.20-1.el6.remi.x86_64 (@remi)

У вас есть php 5.4 из репозитория remi, поэтому вам нужно включить этот репозиторий для установки дополнительного расширения (кстати, это будет означать обновление до последней версии 5.4.45).

yum --enablerepo=remi install php-soap

Вы также можете навсегда включить репозиторий php 5.4 (или любую другую версию)

yum-config-manager --enable remi-php54
yum install php-soap

Обратите внимание: PHP 5.4 теперь является EOL и не поддерживается проектом PHP, я сильно обновляюсь до поддерживаемой версии (5.6, 7, 7.1).

Инструкции мастера

0

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

Ниже команды список доступных пакетов из репозитория,

yum list php55-*

Здесь 55 - версия php.

...
php55-php-snmp.x86_64                                                    5.5.38-7.el6.remi                                            remi-safe
php55-php-soap.x86_64                                                    5.5.38-7.el6.remi                                            remi-safe
php55-php-suhosin.x86_64                                                 0.9.38-1.el6.remi                                            remi-safe
...

Узнайте соответствующий пакет и запустите его.

yum install php55-php-soap.x86_64

Наконец, вы должны включить модуль мыла,

find -name soap.so
/opt/remi/php55/root/usr/lib64/php/modules/soap.so

Добавьте строку ниже в файл php.ini,

extension='/opt/remi/php55/root/usr/lib64/php/modules/soap.so'

Перезапустите сервер Apache,

sudo service httpd restart
  • 0
    НЕТ, плохая идея. не смешивайте расширения php 5.4 и 5.5, не смешивайте php55-php * (SCL, несколько версий) и php- * (одна версия)
  • 0
    Я дал php55, например, вы можете заменить его вашей фактической версией php (php54 или любой другой)
0

Попробуйте загрузить это.

php soap 5.4.16-36 i686

И принудительная установка..

rpm -Uvh php-soap-5.4.16-36.1.el7_2.1.i686.rpm --nodeps
  • 0
    НЕТ, плохая идея, это не сработает
0

Я пошел по ссылке из @liquidflo, и я сделал это, чтобы решить проблему.

  • Перечислены все модули PHP, установленные, чтобы убедиться, что я вернулся все позже

    rpm -qa | grep php

У меня было сочетание модулей, которые я думаю от 5.3 и 5.4. Затем я скопировал все имена модулей и удалил их с помощью

#sudo yum remove php php-mbstring php-mysql php-cli php-gd ...(list all the modules...

Затем я установил все удаленные модули php.

#sudo yum install php php-mbstring php-mysql php-cli php-gd php-soap ...(list all the modules, added php-soap now)...

Я вернусь к PHP 5.3.3 и php-soap.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню