服务器PHP版本从7.2升级到7.3过程,其实只需要很简单的步骤

  • 停止PHP服务
  • 移除旧版PHP
  • 设置新版本rpm库
  • 下载安装新版并重启服务

移除旧版

# 停止当前服务
systemctl stop php-fpm
# 停止Nginx服务
systemctrl stop nginx
# 查看已安装的PHP版本
yum list installed |grep php

查看已安装的版本

请务必找个地方记录已经安装的模块

后续重新安装的时候也要把这些模块安装上

[root@long ~]# yum list installed |grep php
Failed to set locale, defaulting to C
Repodata is over 2 weeks old. Install yum-cron? Or run: yum makecache fast
mod_php72w.x86_64                   7.2.17-1.w7                        @webtatic
php72w-cli.x86_64                   7.2.32-1.w7                        @webtatic
php72w-common.x86_64                7.2.32-1.w7                        @webtatic
php72w-devel.x86_64                 7.2.32-1.w7                        @webtatic
php72w-fpm.x86_64                   7.2.32-1.w7                        @webtatic
php72w-gd.x86_64                    7.2.32-1.w7                        @webtatic
php72w-mbstring.x86_64              7.2.32-1.w7                        @webtatic
php72w-mysqlnd.x86_64               7.2.32-1.w7                        @webtatic
php72w-pdo.x86_64                   7.2.32-1.w7                        @webtatic
php72w-xml.x86_64                   7.2.32-1.w7                        @webtatic

移除版本

# 移除所有PHP
yum remove php*
# 查看是否清除干净了
yum search php

安装新版

# EPEL源
yum install epel-release

# REMI源,centos7的使用下面的地址,其他版本自行去官网查看
# 这里下载的时候会很慢,要耐心等待,如果下载不了就要自行找镜像了
yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm

# 更新一下库
yum update

# Yum 源工具
yum install yum-utils

# 查看是否有出现php73的版本了
yum search php73

# 如果出现这样的说明Yum还是没有设置正确,需要重新设置一下
[root@long ~]# yum search php73
Failed to set locale, defaulting to C
Loaded plugins: fastestmirror
Repodata is over 2 weeks old. Install yum-cron? Or run: yum makecache fast
Determining fastest mirrors
 * base: mirrors.cloud.aliyuncs.com
 * extras: mirrors.cloud.aliyuncs.com
 * updates: mirrors.cloud.aliyuncs.com
 * webtatic: us-east.repo.webtatic.com
Warning: No matches found for: php73
No matches found

开始安装

装回上面记录已经卸载的版本

yum install -y php73-php-fpm php73-php-cli php73-php-bcmath php73-php-gd php73-php-json php73-php-mbstring php73-php-mcrypt php73-php-mysqlnd php73-php-opcache php73-php-pdo php73-php-pecl-crypto php73-php-pecl-mcrypt php73-php-pecl-geoip php73-php-recode php73-php-snmp php73-php-soap php73-php-xml

重启服务

# 默认安装后的命令叫php73,我们需要改为php,这样composer才能正常工作
cp /usr/bin/php73 /usr/bin/php

# 查看PHP版本
php -v

# 重启服务
systemctl enable php73-fpm
systemctl start php73-fpm
systemctrl start nginx

最后查看自己的PHP程序是否都正常了