我无法在我的数字海洋托管的服务器上通过yum重新安装PHP。
我安装了PHP 5.4但想要5.6。我添加/启用了remi repo,运行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版(核心版)
答案 0 :(得分:20)
我修好了!问题是我安装了错误的EL版本。 我删除了所有额外的repo,删除了所有的php包,删除了httpd。 如下:
yum install epel-release
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
yum clean
yum update
然后我可以使用以下
安装PHPyum install php56w php56w-opcache php56w-mcrypt php56w-pdo php56w-mysql
答案 1 :(得分:5)
我在linux机器上安装php70w(webstatic)时也遇到了同样的问题。以下命令帮助我安装php70
sudo yum clean all // to clear all caches
清除缓存后再次使用:
安装php70sudo yum install php70
答案 2 :(得分:0)
虽然这可能更适合服务器故障或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