Skip to main content

安裝 PHP 8.1 版

1 安裝 EPEL 8 及 remi 擴充 repo 套件

因為 PHP 8.1 版預設沒有在預設的套件庫中,需要先安裝 EPEL 8 及 remi 套件庫才可以安裝升級版的 PHP,安裝 epel-release 套件指令如下所示:

$ sudo yum install epel-release
上次中介資料過期檢查:2:23:29 前,時間點為西元2022年05月31日 (週二) 13時39分24秒。
依賴關係解析完畢。
==============================================================================================================================================================================================================
 軟體包                                               架構                                           版本                                                軟體庫                                          大小
==============================================================================================================================================================================================================
安裝:
 epel-release                                         noarch                                         8-13.el8                                            extras                                          23 k

處理事項摘要
==============================================================================================================================================================================================================
安裝  1 軟體包

總下載大小:23 k
安裝的大小:35 k
這樣可以嗎 [y/N]: y

按下「y」繼續下載安裝。

下載軟體包:
epel-release-8-13.el8.noarch.rpm                                                                                                                                               81 kB/s |  23 kB     00:00
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
總計                                                                                                                                                                           29 kB/s |  23 kB     00:00
執行處理事項檢查
處理事項檢查成功。
執行處理事項測試
處理事項測試成功。
執行處理事項
  準備        :                                                                                                                                                                                           1/1
  正在安裝    : epel-release-8-13.el8.noarch                                                                                                                                                              1/1
  執行小令稿  : epel-release-8-13.el8.noarch                                                                                                                                                              1/1
  核驗        : epel-release-8-13.el8.noarch                                                                                                                                                              1/1

已安裝:
  epel-release-8-13.el8.noarch

完成!

接下來請安裝 remi 擴充套件。

$ sudo yum install http://rpms.remirepo.net/enterprise/remi-release-8.rpm
上次中介資料過期檢查:0:50:52 前,時間點為西元2022年05月31日 (週二) 15時14分36秒。
remi-release-8.rpm                                                                                                                                                             45 kB/s |  29 kB     00:00
依賴關係解析完畢。
==============================================================================================================================================================================================================
 軟體包                                            架構                                        版本                                                   軟體庫                                             大小
==============================================================================================================================================================================================================
安裝:
 remi-release                                      noarch                                      8.6-1.el8.remi                                         @commandline                                       29 k

處理事項摘要
==============================================================================================================================================================================================================
安裝  1 軟體包

總大小:29 k
安裝的大小:24 k
這樣可以嗎 [y/N]: y

按下「y」繼續下載安裝。

上次中介資料過期檢查:0:50:52 前,時間點為西元2022年05月31日 (週二) 15時14分36秒。
remi-release-8.rpm                                                                                                                                                             45 kB/s |  29 kB     00:00
依賴關係解析完畢。
==============================================================================================================================================================================================================
 軟體包                                            架構                                        版本                                                   軟體庫                                             大小
==============================================================================================================================================================================================================
安裝:
 remi-release                                      noarch                                      8.6-1.el8.remi                                         @commandline                                       29 k

處理事項摘要
==============================================================================================================================================================================================================
安裝  1 軟體包

總大小:29 k
安裝的大小:24 k
這樣可以嗎 [y/N]: y
下載軟體包:
執行處理事項檢查
處理事項檢查成功。
執行處理事項測試
處理事項測試成功。
執行處理事項
  準備        :                                                                                                                                                                                           1/1
  正在安裝    : remi-release-8.6-1.el8.remi.noarch                                                                                                                                                        1/1
  核驗        : remi-release-8.6-1.el8.remi.noarch                                                                                                                                                        1/1

已安裝:
  remi-release-8.6-1.el8.remi.noarch

完成!
2 先移掉原有的 PHP 套件

如果先前有安裝舊版的 PHP 7.2,則建議先行移除,指令如下:

$ sudo yum remove php php-fpm php* -y

下了「-y」參數代表直接移除不詢問,結果如下:

依賴關係解析完畢。
==============================================================================================================================================================================================================
 軟體包                                          架構                                  版本                                                                   軟體庫                                     大小
==============================================================================================================================================================================================================
移除:
 php                                             x86_64                                7.2.24-1.module+el8.4.0+413+c9202dda                                   @appstream                                4.8 M
 php-cli                                         x86_64                                7.2.24-1.module+el8.4.0+413+c9202dda                                   @appstream                                9.6 M
 php-common                                      x86_64                                7.2.24-1.module+el8.4.0+413+c9202dda                                   @appstream                                6.1 M
 php-fpm                                         x86_64                                7.2.24-1.module+el8.4.0+413+c9202dda                                   @appstream                                4.9 M
正在移除無用的依賴軟體包:
 nginx-filesystem                                noarch                                1:1.14.1-9.module+el8.4.0+542+81547229                                 @appstream                                  0

處理事項摘要
==============================================================================================================================================================================================================
移除  5 軟體包

釋放空間:25 M
執行處理事項檢查
處理事項檢查成功。
執行處理事項測試
處理事項測試成功。
執行處理事項
  準備        :                                                                                                                                                                                           1/1
  執行小令稿  : php-7.2.24-1.module+el8.4.0+413+c9202dda.x86_64                                                                                                                                           1/1
  抹除        : php-7.2.24-1.module+el8.4.0+413+c9202dda.x86_64                                                                                                                                           1/5
  執行小令稿  : php-fpm-7.2.24-1.module+el8.4.0+413+c9202dda.x86_64                                                                                                                                       2/5
  抹除        : php-fpm-7.2.24-1.module+el8.4.0+413+c9202dda.x86_64                                                                                                                                       2/5
  執行小令稿  : php-fpm-7.2.24-1.module+el8.4.0+413+c9202dda.x86_64                                                                                                                                       2/5
  抹除        : php-cli-7.2.24-1.module+el8.4.0+413+c9202dda.x86_64                                                                                                                                       3/5
  抹除        : nginx-filesystem-1:1.14.1-9.module+el8.4.0+542+81547229.noarch                                                                                                                            4/5
  執行小令稿  : nginx-filesystem-1:1.14.1-9.module+el8.4.0+542+81547229.noarch                                                                                                                            4/5
  抹除        : php-common-7.2.24-1.module+el8.4.0+413+c9202dda.x86_64                                                                                                                                    5/5
  執行小令稿  : php-common-7.2.24-1.module+el8.4.0+413+c9202dda.x86_64                                                                                                                                    5/5
  核驗        : nginx-filesystem-1:1.14.1-9.module+el8.4.0+542+81547229.noarch                                                                                                                            1/5
  核驗        : php-7.2.24-1.module+el8.4.0+413+c9202dda.x86_64                                                                                                                                           2/5
  核驗        : php-cli-7.2.24-1.module+el8.4.0+413+c9202dda.x86_64                                                                                                                                       3/5
  核驗        : php-common-7.2.24-1.module+el8.4.0+413+c9202dda.x86_64                                                                                                                                    4/5
  核驗        : php-fpm-7.2.24-1.module+el8.4.0+413+c9202dda.x86_64                                                                                                                                       5/5

已移除:
  nginx-filesystem-1:1.14.1-9.module+el8.4.0+542+81547229.noarch             php-7.2.24-1.module+el8.4.0+413+c9202dda.x86_64                 php-cli-7.2.24-1.module+el8.4.0+413+c9202dda.x86_64
  php-common-7.2.24-1.module+el8.4.0+413+c9202dda.x86_64                     php-fpm-7.2.24-1.module+el8.4.0+413+c9202dda.x86_64

完成!
3 切換 PHP 的來源套件庫

再更新一次 yum repo 資訊,指令如下:

$ sudo yum update
上次中介資料過期檢查:0:50:54 前,時間點為西元2022年05月31日 (週二) 15時17分06秒。
依賴關係解析完畢。
==============================================================================================================================================================================================================
 軟體包                                                架構                                            版本                                               軟體庫                                         大小
==============================================================================================================================================================================================================
升級:
 epel-release                                          noarch                                          8-15.el8                                           epel                                           23 k

處理事項摘要
==============================================================================================================================================================================================================
升級  1 軟體包

總下載大小:23 k
這樣可以嗎 [y/N]: y

按下「y」繼續下載安裝。

下載軟體包:
epel-release-8-15.el8.noarch.rpm                                                                                                                                              197 kB/s |  23 kB     00:00
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
總計                                                                                                                                                                           24 kB/s |  23 kB     00:00
Extra Packages for Enterprise Linux 8 - x86_64                                                                                                                                1.6 MB/s | 1.6 kB     00:00
匯入 GPG 密鑰 0x2F86D6A1:
使用者識別碼:"Fedora EPEL (8) <epel@fedoraproject.org>"
指紋                :94E2 79EB 8D8F 25B2 1810 ADF1 21EA 45AB 2F86 D6A1
來自                :/etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-8
這樣可以嗎 [y/N]: y

如果是第一次從這個 repo 下載新的更新套件,系統會詢問你要不要信任這個來源,請按下「y」鍵繼續。

密鑰匯入成功
執行處理事項檢查
處理事項檢查成功。
執行處理事項測試
處理事項測試成功。
執行處理事項
  準備        :                                                                                                                                                                                           1/1
  執行小令稿  : epel-release-8-15.el8.noarch                                                                                                                                                              1/1
  正在升級    : epel-release-8-15.el8.noarch                                                                                                                                                              1/2
  清理        : epel-release-8-13.el8.noarch                                                                                                                                                              2/2
  執行小令稿  : epel-release-8-13.el8.noarch                                                                                                                                                              2/2
  核驗        : epel-release-8-15.el8.noarch                                                                                                                                                              1/2
  核驗        : epel-release-8-13.el8.noarch                                                                                                                                                              2/2

已升級:
  epel-release-8-15.el8.noarch

完成!

接下來請查詢 PHP 的 repo 來源版本清單,指令如下:

$ sudo yum module list php

結果如下,會發現有官方的和 Remi 的來源。

上次中介資料過期檢查:1:02:16 前,時間點為西元2022年05月31日 (週二) 15時17分06秒。
Rocky Linux 8 - AppStream
Name                                     Stream                                        Profiles                                                      Summary
php                                      7.2 [d][e]                                    common [d], devel, minimal                                    PHP scripting language
php                                      7.3                                           common [d], devel, minimal                                    PHP scripting language
php                                      7.4                                           common [d], devel, minimal                                    PHP scripting language
php                                      8.0                                           common [d], devel, minimal                                    PHP scripting language

Remi's Modular repository for Enterprise Linux 8 - x86_64
Name                                     Stream                                        Profiles                                                      Summary
php                                      remi-7.2                                      common [d], devel, minimal                                    PHP scripting language
php                                      remi-7.3                                      common [d], devel, minimal                                    PHP scripting language
php                                      remi-7.4                                      common [d], devel, minimal                                    PHP scripting language
php                                      remi-8.0                                      common [d], devel, minimal                                    PHP scripting language
php                                      remi-8.1                                      common [d], devel, minimal                                    PHP scripting language

提示:預設[d]、已啟用[e]、已停用[x]、已安裝[i]

先重設 PHP 的模組來源,指令如下:

$ sudo yum module reset php -y
上次中介資料過期檢查:1:10:55 前,時間點為西元2022年05月31日 (週二) 15時17分06秒。
依賴關係解析完畢。
==============================================================================================================================================================================================================
 軟體包                                            架構                                             版本                                              軟體庫                                             大小
==============================================================================================================================================================================================================
正在重設模組:
 php

處理事項摘要
==============================================================================================================================================================================================================

完成!

接下來直接重新將 PHP 關聯到 8.1 的模組來源,指令如下:

$ sudo dnfyum module enable php:remi-8.1 -y
上次中介資料過期檢查:1:11:28 前,時間點為西元2022年05月31日 (週二) 15時17分06秒。
依賴關係解析完畢。
==============================================================================================================================================================================================================
 軟體包                                            架構                                             版本                                              軟體庫                                             大小
==============================================================================================================================================================================================================
正在啟用模組串流:
 php                                                                                                remi-8.1

處理事項摘要
==============================================================================================================================================================================================================

完成!

再次查詢 PHP 的 repo 來源版本清單。

$ sudo yum module list php
上次中介資料過期檢查:1:12:52 前,時間點為西元2022年05月31日 (週二) 15時17分06秒。
Rocky Linux 8 - AppStream
Name                                    Stream                                          Profiles                                                      Summary
php                                     7.2 [d]                                         common [d], devel, minimal                                    PHP scripting language
php                                     7.3                                             common [d], devel, minimal                                    PHP scripting language
php                                     7.4                                             common [d], devel, minimal                                    PHP scripting language
php                                     8.0                                             common [d], devel, minimal                                    PHP scripting language

Remi's Modular repository for Enterprise Linux 8 - x86_64
Name                                    Stream                                          Profiles                                                      Summary
php                                     remi-7.2                                        common [d], devel, minimal                                    PHP scripting language
php                                     remi-7.3                                        common [d], devel, minimal                                    PHP scripting language
php                                     remi-7.4                                        common [d], devel, minimal                                    PHP scripting language
php                                     remi-8.0                                        common [d], devel, minimal                                    PHP scripting language
php                                     remi-8.1 [e]                                    common [d], devel, minimal                                    PHP scripting language

提示:預設[d]、已啟用[e]、已停用[x]、已安裝[i]

8.1 的部份已經變成「e」囉~

4 安裝 PHP 套件

指令如下:

$ sudo yum install php-cli php-fpm php-curl php-mysqlnd php-gd php-opcache php-zip php-intl php-common php-bcmath php-imap php-imagick php-xmlrpc php-json php-readline php-memcached php-redis php-mbstring php-apcu php-xml php-dom php-redis php-memcached php-memcache php-process php-sodium php-bcmath php-gmp -y
5 重新啟動 apahce 伺服器

完成後再重新啟動 apache server 即剛成安裝工作。

$ sudo systemctl restart httpd