![在 CentOS 7 上发布更新 PHP 7](https://linux22.com/image/142081/%E5%9C%A8%20CentOS%207%20%E4%B8%8A%E5%8F%91%E5%B8%83%E6%9B%B4%E6%96%B0%20PHP%207.png)
我想通过 SSH 将我的 CentOS 7 服务器(安装了 DirectAdmin)上的 PHP 7.0.2.6 更新到最新的 7.2 版本。我在互联网上找到了很多程序,但似乎都不起作用。有人告诉我程序应该是这样的:
- yum 安装 epel-release
- 转速-Uvhhttp://rpms.remirepo.net/enterprise/remi-release-7.rpm
- yum 列出已安装的 php*
- 百胜删除 php*
- yum install --enablerepo=remi-php72 php php-mcrypt php-cli php-gd php-curl
- php-mysql php-ldap php-zip php-fileinfo
- php-v
我被第四步困住了,结果如下。有什么想法可能是这里的问题吗?
[root@vps ~]# yum list installed php*
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: ams.edge.kernel.org
* epel: ams.edge.kernel.org
* extras: mirror.nforce.com
* ius: mirror.ehv.weppel.nl
* remi-php71: remi.mirror.wearetriple.com
* remi-php72: remi.mirror.wearetriple.com
* remi-safe: remi.mirror.wearetriple.com
* updates: centos.mirror.transip.nl
* webtatic: uk.repo.webtatic.com
Error: No matching Packages to list
附加信息:
[root@vps ~]# dir -A .bash_history .custombuild .rnd .bash_logout epel-release-latest-7.noarch.rpm setup-ius.sh .bash_profile .pki .spamassassin .bashrc remi-release-7.rpm .ssh .cshrc remi-release-7.rpm.1 .tcshrc
结果第5步:
[root@vps ~]# yum install --enablerepo=remi-php72 php php-mcrypt php-cli php-gd php-curl
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
epel/x86_64/metalink | 30 kB 00:00
* base: ams.edge.kernel.org
* epel: ams.edge.kernel.org
* extras: mirror.nforce.com
* ius: mirror.amsiohosting.net
* remi-php71: remi.mirror.wearetriple.com
* remi-php72: remi.mirror.wearetriple.com
* remi-safe: remi.mirror.wearetriple.com
* updates: centos.mirror.transip.nl
* webtatic: uk.repo.webtatic.com
base | 3.6 kB 00:00
extras | 3.4 kB 00:00
ius | 2.3 kB 00:00
remi-php71 | 3.0 kB 00:00
remi-php72 | 3.0 kB 00:00
remi-safe | 3.0 kB 00:00
updates | 3.4 kB 00:00
webtatic | 3.6 kB 00:00
(1/3): remi-php72/primary_db | 209 kB 00:00
(2/3): remi-php71/primary_db | 230 kB 00:00
(3/3): remi-safe/primary_db | 1.4 MB 00:00
No package php available.
No package php-mcrypt available.
No package php-cli available.
No package php-gd available.
No package php-curl available.
Error: Nothing to do
答案1
在 DirectAdmin 的网站上,它特别声明不要通过包管理器安装或升级 PHP(或 Apache)。
相反,您需要通过 CustomBuild 脚本来完成此操作。
此链接中有说明,我将提供概述,以防链接更改或变得不可用:
https://www.transip.eu/knowledgebase/entry/420-directadmin-want-update-the-version/
cd
到将包含脚本的 custombuild 目录所在的位置build
。
运行./build version
以确保它是2.0版本。如果是,则跳过下一部分。如果不是,那么
mv custombuild custombuild_1.x
wget -O custombuild.tar.gz http://files.directadmin.com/services/custombuil/2.0/custombuild.tar.gz
tar xvzf custombuild.tar.gz
cd custombuild
更新 PHP
./build set php1_release 7.2
./build update
./build php d
检查软件版本以确保 PHP 已更新:
./build versions
httpd
通常会重新启动,但如果没有重新启动,您可以手动执行。
答案2
尝试 - yum list 已安装 | grep php