使用 YUM 安装 PHP 的关键就是找一个好用的 YUM 源。YUM 自带的 base 库里面有 PHP 5.4,版本太旧。在第三方源中最为常用的是 RemiWebtatic 这两个 YUM 源。

提示:这两个 YUM 源都依赖 EPEL 源,所以需要确认已安装 EPEL 源:

$ # 查看是否安装了 EPEL
$ yum info epel-release
$ # 如果没有需要安装
$ sudo yum install epel-release

一、Remi 源

首先以安装 RPM 包的方式安装这个源。在其官网首页的下半部分就是针对各个系统版本的安装地址,例如系统是 CentOS 7,那就找到下面这一行:

Enterprise Linux 7 - repository auto-configuration package : remi-release-7.rpm

这一行后面的链接就是 Remi 源的 RPM 包下载链接了。右键复制链接,然后使用 RPM 命令进行安装:

$ sudo rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm

安装完成后使用下面的命令可以看到 Remi 所有库的开启情况:

$ yum repolist all | grep remi

可以看到默认只有 remi-safe 这个库启用了。从这里也可以看出来,Remi 把 PHP 按照不同的版本号放进不同的库里面,通过启用不同的库来安装不同的 PHP 版本。所有的 YUM 库配置文件都在 /etc/yum.repos.d 这个目录里面。这里假设需要安装 PHP 7.1,则打开下面的这个配置文件:

$ sudo vi /etc/yum.repos.d/remi-php71.repo

[remi-php71] 下面的 enabled 设置为 1,保存退出。

然后根据需求来安装不同的 PHP 组件。不用特别指定安装 php-common,因为所有的组件都依赖这个包,安装组件时便会安装它。下面这条命令是根据 Laravel 框架的需求进行安装:

$ sudo yum install php-fpm php-cli php-pdo php-mbstring php-xml php-zip php-mysqlnd

安装完成之后可用 php -m 命令查看安装的所有组件,当然前提是安装了 php-cli

具体 remi-php71 这库里都有哪些包,可以通过下面的路径在官网上查看:

首页找到对应系统版本的那一行开头的链接点进去 —> 页面上找到 remi-php71 (only PHP 7.1 and extensions) 字样下面的 x86_64 这个链接点进去 —> 在页面上面的 Available Groups 列表里面就有所有的包信息。

有关PHP的配置文件如 php.iniphp-fpm.conf,都在 /etc/ 目录里面。

如果想更换 PHP 的版本,就把旧的 PHP 安装包移除,然后关闭旧的 PHP 库,开启需要的 PHP 库安装 PHP 包即可。

$ sudo yum remove php-*

二、Webtatic 源

进入官网首页,点击上面的 PACKAGES 标签。在 Packages 页面可以看到,Webtatic 关注的包只有 MySQL、Nginx 和 PHP,而 PHP 的更新最为及时。在 Packages 页面选择你想安装的 PHP 版本,点击进去,便有详细的安装介绍。

$ # 安装webtatic源
$ sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

Webtatic 与 Remi 最大的不同之处在于:Remi 是以不同的库来区分不同的 PHP 版本,Webtatic 则是以不同的后缀区分不同的 PHP 版本。比如 PHP-FPM 组件的包名称为 php71w-fpm,很明显的就是名称中多出来这个 71w71 对应版本号,w 则是 Webstatic 的缩写。

(完)