TranslateProject/published/202009/20200118 3 Methods to Install the Latest PHP 7 Package on CentOS-RHEL 7 and CentOS-RHEL 6.md

222 lines
9.3 KiB
Markdown
Raw Permalink Normal View History

[#]: collector: (lujun9972)
[#]: translator: (gxlct008)
2020-09-14 23:55:06 +08:00
[#]: reviewer: (wxy)
[#]: publisher: (wxy)
[#]: url: (https://linux.cn/article-12615-1.html)
[#]: subject: (3 Methods to Install the Latest PHP 7 Package on CentOS/RHEL 7 and CentOS/RHEL 6)
[#]: via: (https://www.2daygeek.com/install-php-7-on-centos-6-centos-7-rhel-7-redhat-7/)
[#]: author: (Magesh Maruthamuthu https://www.2daygeek.com/author/magesh/)
2020-09-14 23:55:06 +08:00
在 CentOS/RHEL 7/6 上安装最新 PHP 7 软件包的 3 种方法
======
2020-09-14 23:55:06 +08:00
![](https://img.linux.net.cn/data/attachment/album/202009/14/235431i92iqjj2we0vegyj.jpg)
2020-09-14 23:55:06 +08:00
PHP 是最流行的开源通用脚本语言,被广泛用于 Web 开发。它是 LAMP 栈应用程序套件的一部分,用于创建动态网站。流行的 CMS 应用程序 WordPressJoomla 和 Drupal 都是用 PHP 语言开发的。这些应用程序的安装和配置都需要 PHP 7。PHP 7 可以更快地加载你的 Web 应用程序,并消耗更少的服务器资源。
2020-09-13 22:50:17 +08:00
在默认情况下CentOS/RHEL 6 操作系统在其官方存储库中提供 PHP 5.3,而 CentOS/RHEL 7 则提供 PHP 5.4。
2020-09-14 23:55:06 +08:00
在本文中,我们将向你展示如何在 CentOS/RHEL 7 和 CentOS/RHEL 6 系统上安装最新版本的 PHP。
2020-09-14 23:55:06 +08:00
这可以通过在系统中添加必要的 [附加第三方 RPM 存储库][1] 来完成。
2020-09-14 23:55:06 +08:00
### 方法-1如何使用软件集合存储库SCL在 CentOS 6/7 上安装 PHP 7
2020-09-13 22:50:17 +08:00
现在SCL 存储库由 CentOS SIG 维护,该组织不仅重新构建了 Red Hat Software Collections还提供了自己的一些其他软件包。
2020-09-14 23:55:06 +08:00
它包含各种程序的较新版本,这些程序可以与现有的旧软件包一起安装,并可以使用 `scl` 命令调用。
2020-09-14 23:55:06 +08:00
要想在 CentOS 上安装软件集合存储库SCL请运行以下 [yum 命令][2]
```
# yum install centos-release-scl
```
2020-09-14 23:55:06 +08:00
运行以下命令可以验证 SCL 存储库中可用的 PHP 7 版本:
```
# yum --disablerepo="*" --enablerepo="centos-sclo-rh" list *php
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
centos-sclo-rh: centos.mirrors.estointernet.in
Available Packages
php54-php.x86_64 5.4.40-4.el7 centos-sclo-rh
php55-php.x86_64 5.5.21-5.el7 centos-sclo-rh
rh-php70-php.x86_64 7.0.27-2.el7 centos-sclo-rh
rh-php71-php.x86_64 7.1.30-2.el7 centos-sclo-rh
rh-php72-php.x86_64 7.2.24-1.el7 centos-sclo-rh
```
2020-09-14 23:55:06 +08:00
运行以下命令可以从 SCL 中安装 PHP 7.2 到你的系统中:
```
# yum --disablerepo="*" --enablerepo="centos-sclo-rh" install rh-php72-php
```
2020-09-14 23:55:06 +08:00
如果需要为 PHP 7.2 安装其他模块,则可以通过运行以下命令格式来安装它们。 例如,你可以通过执行以下命令来安装 `gd``pdo` 软件包:
```
# yum --disablerepo="*" --enablerepo="centos-sclo-rh" install rh-php72-php-gd rh-php72-php-pdo
```
2020-09-13 22:50:17 +08:00
### 方法-1a如何使用软件集合存储库SCL在 RHEL 7 上安装 PHP 7
2020-09-14 23:55:06 +08:00
对于 Red Hat 7启用以下存储库以安装最新的 PHP 7 软件包:
```
# sudo subscription-manager repos --enable rhel-7-server-extras-rpms
# sudo subscription-manager repos --enable rhel-7-server-optional-rpms
# sudo subscription-manager repos --enable rhel-server-rhscl-7-rpms
```
2020-09-14 23:55:06 +08:00
运行以下命令从 RHSCL 库中搜索可用的 PHP 7 版本:
```
# yum search rh-php*
```
2020-09-14 23:55:06 +08:00
运行以下命令,你可以轻松地从 RHSCL 存储库中把 PHP7.3 安装到你的 RHEL 7 计算机上:
```
# yum install rh-php73
```
2020-09-13 22:50:17 +08:00
### 方法-2如何使用 Remi 存储库在 CentOS 6/7 上安装 PHP 7
2020-09-14 23:55:06 +08:00
[Remi 存储库][3] 存储和维护着最新版本的 PHP 软件包,其中包含大量的库,扩展和工具。 有一些是从 Fedora 和 EPEL 反向移植的。
2020-09-13 22:50:17 +08:00
这是 CentOS 社区认可的存储库,它不会修改或影响任何基础软件包。
2020-09-14 23:55:06 +08:00
作为前提条件,如果你的系统上尚未安装 [EPEL 存储库][4],该操作会首先安装它。
2020-09-14 23:55:06 +08:00
你可以轻松地从 Remi 存储库中找到可用的 PHP 7 软件包版本,因为它会为每个版本添加一个单独的存储库。 你可以使用 [ls 命令][5] 查看它们:
```
# ls -lh /etc/yum.repos.d/remi-php*
-rw-r--r--. 1 root root 456 Sep 6 01:31 /etc/yum.repos.d/remi-php54.repo
-rw-r--r--. 1 root root 1.3K Sep 6 01:31 /etc/yum.repos.d/remi-php70.repo
-rw-r--r--. 1 root root 1.3K Sep 6 01:31 /etc/yum.repos.d/remi-php71.repo
-rw-r--r--. 1 root root 1.3K Sep 6 01:31 /etc/yum.repos.d/remi-php72.repo
-rw-r--r--. 1 root root 1.3K Sep 6 01:31 /etc/yum.repos.d/remi-php73.repo
-rw-r--r--. 1 root root 1.3K Sep 6 01:31 /etc/yum.repos.d/remi-php74.repo
```
2020-09-14 23:55:06 +08:00
运行以下命令,你可以轻松地从 Remi 存储库中把 PHP7.4 安装到你的 CentOS 6/7 计算机上:
```
# yum --disablerepo="*" --enablerepo="remi-php74" install php php-mcrypt php-cli php-gd php-curl php-mysql php-ldap php-zip php-fileinfo
```
2020-09-13 22:50:17 +08:00
### 方法-2a如何使用 Remi 存储库在 RHEL 7 上安装 PHP 7
2020-09-13 22:50:17 +08:00
对于 Red Hat 7请安装以下存储库以安装最新的 PHP 7 软件包。
2020-09-14 23:55:06 +08:00
在 RHEL 7 上安装 EPEL 存储库:
```
# yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
```
2020-09-14 23:55:06 +08:00
在 RHEL 7 上安装 Remi 存储库:
```
# yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
```
2020-09-14 23:55:06 +08:00
启用可选的 RPMS 存储库:
```
# subscription-manager repos --enable=rhel-7-server-optional-rpms
```
2020-09-14 23:55:06 +08:00
运行以下命令,可以轻松地从 remi 存储库中,把 PHP 7.4 安装在 RHEL 7 系统上:
```
# yum --disablerepo="*" --enablerepo="remi-php74" install php php-mcrypt php-cli php-gd php-curl php-mysql php-ldap php-zip php-fileinfo
```
2020-09-14 23:55:06 +08:00
要验证 PHP 7 的安装版本,请运行以下命令:
```
# php -v
PHP 7.4.1 (cli) (built: Dec 17 2019 16:35:58) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
```
2020-09-13 22:50:17 +08:00
### 方法-3如何使用 IUS 社区存储库在 CentOS 6/7 上安装 PHP 7
2020-09-14 23:55:06 +08:00
IUS 社区存储库是 CentOS 社区批准的第三方 RPM 存储库,其中包含 PHP、Python、MySQL 等软件的最新上游版本,以及用于 Enterprise LinuxRHEL 和 CentOS5、6 和 7 的软件包。
2020-09-14 23:55:06 +08:00
[IUS 社区存储库][6] 与 EPEL 存储库具有依赖性,因此我们必须在安装 IUS 存储库之前先安装 EPEL 存储库。 请按照以下步骤将 EPEL 和 IUS 社区存储库安装并启用到 RPM 系统,然后再安装软件包。
2020-09-14 23:55:06 +08:00
EPEL软件包包含在 CentOS Extras 存储库中,并默认启用,因此,我们可以通过运行以下命令来安装它:
```
# yum install epel-release
```
2020-09-14 23:55:06 +08:00
下载 IUS 社区存储库的 Shell 脚本如下:
```
# curl 'https://setup.ius.io/' -o setup-ius.sh
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 1914 100 1914 0 0 6563 0 --:--:-- --:--:-- --:--:-- 133k
```
2020-09-14 23:55:06 +08:00
安装/启用 IUS 社区存储库:
```
# sh setup-ius.sh
```
2020-09-14 23:55:06 +08:00
运行如下命来检查 IUS 存储库中可用的 PHP 7 版本:
```
# yum --disablerepo="*" --enablerepo="ius" list *php7*
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
Available Packages
mod_php71u.x86_64 7.1.33-1.el7.ius ius
mod_php72u.x86_64 7.2.26-1.el7.ius ius
mod_php73.x86_64 7.3.13-1.el7.ius ius
php71u-bcmath.x86_64 7.1.33-1.el7.ius ius
php71u-cli.x86_64 7.1.33-1.el7.ius ius
php71u-common.x86_64 7.1.33-1.el7.ius ius
php71u-dba.x86_64 7.1.33-1.el7.ius ius
php71u-dbg.x86_64 7.1.33-1.el7.ius ius
php71u-devel.x86_64 7.1.33-1.el7.ius ius
php71u-embedded.x86_64 7.1.33-1.el7.ius ius
```
2020-09-14 23:55:06 +08:00
运行以下命令你可以轻松地从 IUS 存储库中安装 PHP 7.3 到你 CentOS 6/7 系统上:
```
# yum --disablerepo="*" --enablerepo="ius" install php73-common php73-cli php73-gd php73-gd php73-mysqlnd php73-ldap php73-soap php73-mbstring
```
--------------------------------------------------------------------------------
via: https://www.2daygeek.com/install-php-7-on-centos-6-centos-7-rhel-7-redhat-7/
作者:[Magesh Maruthamuthu][a]
选题:[lujun9972][b]
2020-09-13 22:50:17 +08:00
译者:[gxlct008](https://github.com/gxlct008)
2020-09-14 23:55:06 +08:00
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://www.2daygeek.com/author/magesh/
[b]: https://github.com/lujun9972
[1]: https://www.2daygeek.com/8-additional-thirdparty-yum-repositories-centos-rhel-fedora-linux/
[2]: https://www.2daygeek.com/yum-command-examples-manage-packages-rhel-centos-systems/
[3]: https://www.2daygeek.com/install-enable-remi-repository-on-centos-rhel-fedora-linux/
[4]: https://www.2daygeek.com/install-enable-epel-repository-on-rhel-centos-oracle-linux/
[5]: https://www.2daygeek.com/linux-unix-ls-command-display-directory-contents/
[6]: https://www.2daygeek.com/install-enable-ius-community-repository-on-rhel-centos/