如何為Ubuntu中安裝不同的PHP版本(5.6、7.x和8.0)
PPHP是英文超級文本預處理語言(PHP:Hypertext Preprocessor)的遞歸縮寫。是一種開放源代碼,流行的通用腳本語言,被廣泛使用,最適合開發網站和基于Web的應用程序。它是一種服務器端腳本語言,特別適用于網絡開發并可嵌入HTML 中。
目前,有三種受支持版本的PHP,即PHP 5.6,7.0,和8.0。含義PHP 5.3,5.4,和5.5都達到了生命的盡頭; 安全更新不再支持它們。
在本文中,我們將說明如何使用Ondřej Surý PPA在Ubuntu和它的派生版本中為Apache和Nginx Web服務器安裝請求最多的PHP擴展的所有受支持版本的PHP。我們還將說明如何設置在Ubuntu系統上使用的PHP的默認版本。
請注意,PHP 7.x是Ubuntu軟件存儲庫中受支持的穩定版本,您可以通過運行以下apt命令進行確認。
- linuxmi@linuxmi:~/www.linuxmi.com$ sudo apt show php
- 或者
- linuxmi@linuxmi:~/www.linuxmi.com$ sudo apt show php -a
要從Ubuntu軟件庫安裝默認的PHP版本,請使用下面的命令。
- linuxmi@linuxmi:~/www.linuxmi.com$ sudo apt install php
在Ubuntu上使用PPA安裝 PHP (5.6, 7.x, 8.0)
1、首先添加Ondřej SurýPPA,在Ubuntu系統上安裝不同版本的PHP - PHP 5.6、PHP 7.x和PHP 8.0。
- linuxmi@linuxmi:~/www.linuxmi.com$ sudo apt install python-software-properties
- linuxmi@linuxmi:~/www.linuxmi.com$ sudo add-apt-repository ppa:ondrej/php
2.接下來,如下更新系統。
- [linuxmi@linux:~/www.linuxmi.com]$ sudo apt-get update
3.現在,如下安裝不同支持的PHP版本。
對于Apache Web服務器
- [linuxmi@linux:~/www.linuxmi.com]$ sudo apt install php5.6 [PHP 5.6]
- [linuxmi@linux:~/www.linuxmi.com]$ sudo apt install php7.0 [PHP 7.0]
- [linuxmi@linux:~/www.linuxmi.com]$ sudo apt install php7.1 [PHP 7.1]
- [linuxmi@linux:~/www.linuxmi.com]$ sudo apt install php7.2 [PHP 7.2]
- [linuxmi@linux:~/www.linuxmi.com]$ sudo apt install php7.3 [PHP 7.3]
- [linuxmi@linux:~/www.linuxmi.com]$ sudo apt install php7.4 [PHP 7.4]
- [linuxmi@linux:~/www.linuxmi.com]$ sudo apt install php8.0 [PHP 8.0]
對于Nginx Web服務器
- [linuxmi@linux:~/www.linuxmi.com]$ sudo apt install php5.6-fpm [PHP 5.6]
- [linuxmi@linux:~/www.linuxmi.com]$ sudo apt install php7.0-fpm [PHP 7.0]
- [linuxmi@linux:~/www.linuxmi.com]$ sudo apt install php7.1-fpm [PHP 7.1]
- [linuxmi@linux:~/www.linuxmi.com]$ sudo apt install php7.2-fpm [PHP 7.2]
- [linuxmi@linux:~/www.linuxmi.com]$ sudo apt install php7.3-fpm [PHP 7.3]
- [linuxmi@linux:~/www.linuxmi.com]$ sudo apt install php7.4-fpm [PHP 7.4]
- [linuxmi@linux:~/www.linuxmi.com]$ sudo apt install php8.0-fpm [PHP 8.0]
4.要安裝任何PHP模塊,只需指定PHP版本并使用自動完成功能即可查看所有模塊,如下所示。
- ------------ 按Tab鍵自動完成 ------------
- [linuxmi@linux:~/www.linuxmi.com]$ sudo apt install php5.6
- [linuxmi@linux:~/www.linuxmi.com]$ sudo apt install php7.0
- [linuxmi@linux:~/www.linuxmi.com]$ sudo apt install php7.1
- [linuxmi@linux:~/www.linuxmi.com]$ sudo apt install php7.2
- [linuxmi@linux:~/www.linuxmi.com]$ sudo apt install php7.3
- [linuxmi@linux:~/www.linuxmi.com]$ sudo apt install php7.4
- [linuxmi@linux:~/www.linuxmi.com]$ sudo apt install php8.0
5.現在,您可以從列表中安裝大多數必需的PHP模塊。
- ------------ 安裝 PHP 模塊 ------------
- [linuxmi@linux:~/www.linuxmi.com]$ sudo apt install php5.6-cli php5.6-xml php5.6-mysql
- [linuxmi@linux:~/www.linuxmi.com]$ sudo apt install php7.0-cli php7.0-xml php7.0-mysql
- [linuxmi@linux:~/www.linuxmi.com]$ sudo apt install php7.1-cli php7.1-xml php7.1-mysql
- [linuxmi@linux:~/www.linuxmi.com]$ sudo apt install php7.2-cli php7.2-xml php7.2-mysql
- [linuxmi@linux:~/www.linuxmi.com]$ sudo apt install php7.3-cli php7.3-xml php7.3-mysql
- [linuxmi@linux:~/www.linuxmi.com]$ sudo apt install php7.3-cli php7.4-xml php7.4-mysql
- [linuxmi@linux:~/www.linuxmi.com]$ sudo apt install php7.3-cli php8.0-xml php8.0-mysql
6. 最后,驗證系統上使用的默認PHP版本,如下所示。
- [linuxmi@linux:~/www.linuxmi.com]$ php -v
在Ubuntu中設置默認PHP版本
7. 您可以使用update-alternatives命令設置系統上使用的默認PHP版本,設置后,檢查PHP版本以確認,如下。
- ------------ 設置默認PHP版本5.6 ------------
- [linuxmi@linux:~/www.linuxmi.com]$ sudo update-alternatives --set php /usr/bin/php5.6
- ------------ 設置默認PHP版本7.0 ------------
- [linuxmi@linux:~/www.linuxmi.com]$ sudo update-alternatives --set php /usr/bin/php7.0
- ------------ 設置默認PHP版本 7.1 ------------
- [linuxmi@linux:~/www.linuxmi.com]$ sudo update-alternatives --set php /usr/bin/php7.1
- ------------ 設置默認PHP版本 8.0 ------------
- [linuxmi@linux:~/www.linuxmi.com]$ sudo update-alternatives --set php /usr/bin/php8.0
8. 要設置與Apache web服務器一起工作的PHP版本,請使用下面的命令。首先,使用a2dismod命令禁用當前版本,然后使用a2enmod命令啟用您想要的版本。
- ----------- 禁用PHP版本 -----------
- [linuxmi@linux:~/www.linuxmi.com]$ sudo a2dismod php5.6
- [linuxmi@linux:~/www.linuxmi.com]$ sudo a2dismod php7.0
- [linuxmi@linux:~/www.linuxmi.com]$ sudo a2dismod php7.1
- [linuxmi@linux:~/www.linuxmi.com]$ sudo a2dismod php7.2
- [linuxmi@linux:~/www.linuxmi.com]$ sudo a2dismod php7.3
- [linuxmi@linux:~/www.linuxmi.com]$ sudo a2dismod php7.4
- [linuxmi@linux:~/www.linuxmi.com]$ sudo a2dismod php8.0
- ----------- 啟用PHP版本 -----------
- [linuxmi@linux:~/www.linuxmi.com]$ sudo a2enmod php5.6
- [linuxmi@linux:~/www.linuxmi.com]$ sudo a2enmod php7.1
- [linuxmi@linux:~/www.linuxmi.com]$ sudo a2enmod php7.2
- [linuxmi@linux:~/www.linuxmi.com]$ sudo a2enmod php7.3
- [linuxmi@linux:~/www.linuxmi.com]$ sudo a2enmod php7.4
- [linuxmi@linux:~/www.linuxmi.com]$ sudo a2enmod php8.0
- ----------- 重新啟動Apache服務器 -----------
- [linuxmi@linux:~/www.linuxmi.com]$ sudo systemctl restart apache2
9. 在從一個版本切換到另一個版本之后,您可以通過運行下面的命令找到您的PHP配置文件。
- ------------ For PHP 5.6 ------------
- [linuxmi@linux:~/www.linuxmi.com]$ sudo update-alternatives --set php /usr/bin/php5.6
- [linuxmi@linux:~/www.linuxmi.com]$ php -i | grep "Loaded Configuration File"
- ------------ For PHP 7.0 ------------
- [linuxmi@linux:~/www.linuxmi.com]$ sudo update-alternatives --set php /usr/bin/php7.0
- [linuxmi@linux:~/www.linuxmi.com]$ php -i | grep "Loaded Configuration File"
- ------------ For PHP 7.1 ------------
- [linuxmi@linux:~/www.linuxmi.com]$ sudo update-alternatives --set php /usr/bin/php7.1
- [linuxmi@linux:~/www.linuxmi.com]$ php -i | grep "Loaded Configuration File"
- ------------ For PHP 7.2 ------------
- [linuxmi@linux:~/www.linuxmi.com]$ sudo update-alternatives --set php /usr/bin/php7.2
- [linuxmi@linux:~/www.linuxmi.com]$ php -i | grep "Loaded Configuration File"
- ------------ For PHP 7.3 ------------
- [linuxmi@linux:~/www.linuxmi.com]$ sudo update-alternatives --set php /usr/bin/php7.3
- [linuxmi@linux:~/www.linuxmi.com]$ php -i | grep "Loaded Configuration File"
- ------------ For PHP 7.4 ------------
- [linuxmi@linux:~/www.linuxmi.com]$ sudo update-alternatives --set php /usr/bin/php7.4
- [linuxmi@linux:~/www.linuxmi.com]$ php -i | grep "Loaded Configuration File"
- ------------ For PHP 8.0 ------------
- [linuxmi@linux:~/www.linuxmi.com]$ sudo update-alternatives --set php /usr/bin/php8.0
- [linuxmi@linux:~/www.linuxmi.com]$ php -i | grep "Loaded Configuration File"
在本文中,我們展示了如何在Ubuntu及其派生版本中安裝所有受支持的PHP版本。