Назад | Перейти на главную страницу

PHP 7 конфликтует с PHP 5 (Centos 7)

Попытка установить PHP 7 теперь, когда он доступен;

(на CentOS 7)

добавлены репо:

rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
Then installed via:

yum install php70w php70w-opcache

Выход:

[root@host]# yum install php70w php70w-opcache
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.advancedhosters.com
* epel: mirror.symnds.com
* extras: mirror.netdepot.com
* updates: mirrors.rit.edu
* webtatic: us-east.repo.webtatic.com
Resolving Dependencies
--> Running transaction check
---> Package php70w.x86_64 0:7.0.2-1.w7 will be installed
--> Processing Dependency: php70w-common(x86-64) = 7.0.2-1.w7 for package: php70w-7.0.2-1.w7.x86_64
--> Processing Dependency: php70w-cli(x86-64) = 7.0.2-1.w7 for package: php70w-7.0.2-1.w7.x86_64
--> Processing Dependency: php70w-cli = 7.0.2-1.w7 for package: php70w-7.0.2-1.w7.x86_64
---> Package php70w-opcache.x86_64 0:7.0.2-1.w7 will be installed
--> Running transaction check
---> Package php70w-cli.x86_64 0:7.0.2-1.w7 will be installed
---> Package php70w-common.x86_64 0:7.0.2-1.w7 will be installed
--> Processing Conflict: php70w-common-7.0.2-1.w7.x86_64 conflicts php-common < 5.5.0
--> Finished Dependency Resolution
Error: php70w-common conflicts with php-common-5.4.16-36.el7_1.x86_64
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest

Итак, проблема: Error: php70w-common conflicts with php-common-5.4.16-36.el7_1.x86_64

Как это исправить? Мне нужно, чтобы обе версии работали одновременно.

Вы можете установить php7 для C7 (и других) как коллекцию программного обеспечения (scl). Он устанавливается вместе с системой, предоставляемой php 5, и полностью от нее не зависит. Вы можете найти php7 scl на РЕПО РЕМИ. Вас также может заинтересовать это Вопросы и ответы по SF.

Вы можете запустить следующую команду

yum --skip-broken install (package_name)

Он установит все зависимости и пропустит конфликтующие пакеты.

Я не думаю, что это хороший способ. Это очень изящно для конфигурации и программирования, если у вас есть разные версии PHP на одном сервере. Гораздо проще, если у вас будет отдельный сервер. Также зачем вам оба? Приложение PHP 5 в значительной степени совместимо с PHP 7 ... если они используют mysql_connect вместо mysqli