請關注本頭條号,每天堅持更新原創幹貨技術文章。
如需學習視訊,請在微信搜尋公衆号“智傳網優”直接開始自助視訊學習
1. 前言
本文主要講解如何在CentOS8或RHEL8上安裝PHP。如何在CentOS8或者RHEL8系統上安裝PHP 7.2 ?如何在CentOS8/RHEL8上安裝PHP 7.1 。Red Hat Enterprise Linux 8是用PHP 7.2釋出的,而不是用RHEL 7釋出的PHP 5.4。

如何在CentOS8或RHEL8上安裝PHP最新版
PHP 7.2中一些最顯著的變化是:
- 預設使用FastCGI程序管理器(FPM)。這對于使用線程化http是安全的
- 當更改max_execution_timeconfiguration變量時,它的值應該與httpd ProxyTimeout設定相比對。
- PHP腳本警告和錯誤不再被記錄到/var/log/httpd/error.log中,它們現在被記錄到/var/log/ php-fpm/www-error.log檔案中。
- php-flag和php_value變量/etc/php-fpm.d/*.conf。池中應設定配置檔案它們不再在httpd配置檔案中配置。
- 運作PHP腳本的使用者現在在FPM池配置檔案中配置/etc/php-fpm/d/www.conf。預設使用者是apache。
- 無論何時安裝新擴充名或更改PHP配置檔案,都需要重新啟動php-fpm服務。
2. 從PHP 7.2中移除的擴充特性
下面是PHP 7.2中已經棄用的擴充特性
- memcache
- zip
- mysql(注意mysqli和pdo_mysql擴充仍然可用,由php-mysqlnd包提供)
- aspell
PHP 7.2和PHP 7.1都應該在AppStream存儲庫中可用:
sudo yum repolist
您可以通過在終端中運作以下指令來确認啟用和預設的PHP子產品。
sudo yum module list | grep php
php 7.1 devel, minimal, default [d] PHP scripting language php 7.2 [d][e] devel, minimal, default [d] [i] PHP scripting language
3. 在RHEL8或CentOS8上安裝PHP 7.2
在RHEL8或CentOS8上安裝PHP 7.2
運作以下指令在RHEL8或CentOS8上安裝PHP 7.2
sudo yum module install php:7.2
上面的指令将安裝許多PHP擴充,以及不同內建所需的擴充。
安裝完成後,使用以下指令檢查您的PHP版本:
php -v
PHP 7.2.11 (cli) (built: Oct 9 2018 15:09:36) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
如上面的輸出所示,RHEL8系統上有PHP 7.2.11。
4. 啟動和配置php-fpm服務
現在激活php-fpm服務
sudo systemctl enable --now php-fpm
檢查服務狀态:
systemctl status php-fpm
● php-fpm.service - The PHP FastCGI Process Manager
Loaded: loaded (/usr/lib/systemd/system/php-fpm.service; enabled; vendor preset: disabled)
Active: active (running) since Mon 2019-03-11 00:23:55 EAT; 3min 16s ago
Main PID: 32105 (php-fpm)
Status: "Processes active: 0, idle: 5, Requests: 0, slow: 0, Traffic: 0req/sec"
Tasks: 6 (limit: 11510)
Memory: 24.1M
CGroup: /system.slice/php-fpm.service
├─32105 php-fpm: master process (/etc/php-fpm.conf)
├─32106 php-fpm: pool www
├─32107 php-fpm: pool www
├─32108 php-fpm: pool www
├─32109 php-fpm: pool www
└─32110 php-fpm: pool www
Mar 11 00:23:55 rhel8.local systemd[1]: Starting The PHP FastCGI Process Manager…
Mar 11 00:23:55 rhel8.local systemd[1]: Started The PHP FastCGI Process Manager.
注意,在預設情況下,PHP FPM服務監聽Unix套接字/run/php-fpm/www.sock
5. 安裝 PHP 7.2 擴充
文法:
sudo yum install php-
下面是安裝标準PHP擴充的例子。
sudo yum -y install php php-cli php-fpm php-mysqlnd php-zip php-devel php-gd php-mbstring php-curl php-xml php-pear php-bcmath php-json
6. 如何在CentOS8或者RHEL8上安裝PHP 7.1
如何在CentOS8或者RHEL8上安裝PHP 7.1
如果希望安裝PHP 7.1,也可以在AppStream存儲庫中找到它。使用以下指令安裝PHP 7.1:
sudo yum module install php:7.1
驗證PHP版本:
php -v
PHP 7.1.20 (cli) (built: Jul 19 2018 06:17:27) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2018 Zend Technologies
7. 在CentOS8或者RHEL8系統中切換PHP版本
您可以使用以下指令輕松切換回PHP 7.2:
sudo yum module install php:7.2
8. 在CentOS8或RHEL8系統上配置防火牆
為了使http服務正常運作,需要在在CentOS8或RHEL8上配置防火牆,允許http流量。
sudo firewall-cmd --add-service=http --permanentsudo firewall-cmd --reload
9. 在CentOS8或者RHEL8系統中測試PHP是否安裝成功
最後,讓我們測試一下,以确認PHP是否按預期工作。安裝Apache HTTP伺服器使用:
sudo yum module install httpd
設定httpd服務自啟動并立即運作。
sudo systemctl enable --now httpd
在CentOS8或RHEL8系統上建立PHP測試頁面
echo '<?php phpinfo();' >/var/www/html/info.php
在CentOS8或RHEL8系統上打開PHP相關頁面:
在CentOS8或RHEL8系統上打開PHP相關頁面
10. 總結
通過本文,您應該學會了如何在CentOS8或者RHEL8上安裝和配置PHP了吧?