Cài đặt PHP trên Ubuntu 20.04

PHP: Hypertext Preprocessor, thường được viết tắt thành PHP là một ngôn ngữ lập trình kịch bản hay một loại mã lệnh chủ yếu được dùng để phát triển các ứng dụng viết cho máy chủ, mã nguồn mở, dùng cho mục đích tổng quát. Nó rất thích hợp với web và có thể dễ dàng nhúng vào trang HTML. Do được tối ưu hóa cho các ứng dụng web, tốc độ nhanh, nhỏ gọn, cú pháp giống C và Java, dễ học và thời gian xây dựng sản phẩm tương đối ngắn hơn so với các ngôn ngữ khác nên PHP đã nhanh chóng trở thành một ngôn ngữ lập trình web phổ biến nhất thế giới.

Ngôn ngữ, các thư viện, tài liệu gốc của PHP được xây dựng bởi cộng đồng và có sự đóng góp rất lớn của Zend Inc., công ty do các nhà phát triển cốt lõi của PHP lập nên nhằm tạo ra một môi trường chuyên nghiệp để đưa PHP phát triển ở quy mô doanh nghiệp.

Lưu ý rằng PHP 7.x là phiên bản ổn định được hỗ trợ trong kho phần mềm Ubuntu, bạn có thể xác nhận điều này bằng cách chạy lệnh apt bên dưới.
$ sudo apt show php
OR
$ sudo apt show php -a
Package: php
Version: 1:7.0+35ubuntu6
Priority: optional
Section: php
Source: php-defaults (35ubuntu6)
Origin: Ubuntu
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Original-Maintainer: Debian PHP Maintainers <pkg-php-maint@lists.alioth.debian.org>
Bugs: https://bugs.launchpad.net/ubuntu/+filebug
Installed-Size: 11.3 kB
Depends: php7.0
Supported: 5y
Download-Size: 2,832 B
APT-Sources: http://archive.ubuntu.com/ubuntu xenial/main amd64 Packages
Description: server-side, HTML-embedded scripting language (default)
PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used
open source general-purpose scripting language that is especially suited
for web development and can be embedded into HTML.
.
This package is a dependency package, which depends on Debian's default
PHP version (currently 7.0).

Để cài đặt phiên bản PHP mặc định từ kho phần mềm Ubuntu, hãy sử dụng lệnh bên dưới.
$ sudo apt install php

Cài đặt PHP (5.6, 7.x, 8.0) trên Ubuntu bằng PPA

Trước tiên, hãy bắt đầu bằng cách thêm Ondřej Surý PPA để cài đặt các phiên bản PHP khác nhau - PHP 5.6, PHP 7.x và PHP 8.0 trên hệ thống Ubuntu.
$ sudo apt install python-software-properties
$ sudo add-apt-repository ppa:ondrej/php
Tiếp theo, cập nhật hệ thống như sau.
$ sudo apt-get update
Bây giờ hãy cài đặt các phiên bản PHP được hỗ trợ khác nhau như sau.

Đối với Máy chủ Web Apache

$ sudo apt install php5.6   [PHP 5.6]
$ sudo apt install php7.0 [PHP 7.0]
$ sudo apt install php7.1 [PHP 7.1]
$ sudo apt install php7.2 [PHP 7.2]
$ sudo apt install php7.3 [PHP 7.3]
$ sudo apt install php7.4 [PHP 7.4]
$ sudo apt install php8.0 [PHP 8.0]

Đối với máy chủ web Nginx

$ sudo apt install php5.6-fpm   [PHP 5.6]
$ sudo apt install php7.0-fpm [PHP 7.0]
$ sudo apt install php7.1-fpm [PHP 7.1]
$ sudo apt install php7.2-fpm [PHP 7.2]
$ sudo apt install php7.3-fpm [PHP 7.3]
$ sudo apt install php7.4-fpm [PHP 7.4]
$ sudo apt install php8.0-fpm [PHP 8.0]

Để cài đặt bất kỳ mô-đun PHP nào, chỉ cần chỉ định phiên bản PHP và sử dụng chức năng auto-completion để xem tất cả các mô-đun như sau.
------------ press Tab key for auto-completion ------------ 
$ sudo apt install php5.6
$ sudo apt install php7.0
$ sudo apt install php7.1
$ sudo apt install php7.2
$ sudo apt install php7.3
$ sudo apt install php7.4
$ sudo apt install php8.0
Bây giờ bạn có thể cài đặt hầu hết các mô-đun PHP cần thiết từ danh sách.
------------ Install PHP Modules ------------
$ sudo apt install php5.6-cli php5.6-xml php5.6-mysql
$ sudo apt install php7.0-cli php7.0-xml php7.0-mysql
$ sudo apt install php7.1-cli php7.1-xml php7.1-mysql
$ sudo apt install php7.2-cli php7.2-xml php7.2-mysql
$ sudo apt install php7.3-cli php7.3-xml php7.3-mysql
$ sudo apt install php7.3-cli php7.4-xml php7.4-mysql
$ sudo apt install php7.3-cli php8.0-xml php8.0-mysql

Cuối cùng, xác minh phiên bản PHP mặc định được sử dụng trên hệ thống.
$ php -v 

Thiếp lập phiên bản PHP mặc định trong Ubuntu

Bạn có thể thiết lập phiên bản PHP mặc định để sử dụng trên hệ thống bằng lệnh update-alternatives, sau khi thiết lập xong bạn kiểm tra phiên bản PHP để xác nhận như sau.
------------ Set Default PHP Version 5.6 ------------
$ sudo update-alternatives --set php /usr/bin/php5.6
------------ Set Default PHP Version 7.0 ------------
$ sudo update-alternatives --set php /usr/bin/php7.0
------------ Set Default PHP Version 7.1 ------------
$ sudo update-alternatives --set php /usr/bin/php7.1
------------ Set Default PHP Version 8.0 ------------
$ sudo update-alternatives --set php /usr/bin/php8.0
Để thiếp lập phiên bản PHP sẽ hoạt động với máy chủ web Apache, hãy sử dụng các lệnh bên dưới. Đầu tiên, vô hiệu hóa phiên bản hiện tại bằng lệnh a2dismod và sau đó bật phiên bản bạn muốn bằng lệnh a2enmod.
----------- Disable PHP Version ----------- 
$ sudo a2dismod php5.6
$ sudo a2dismod php7.0
$ sudo a2dismod php7.1
$ sudo a2dismod php7.2
$ sudo a2dismod php7.3
$ sudo a2dismod php7.4
$ sudo a2dismod php8.0

----------- Enable PHP Version -----------
$ sudo a2enmod php5.6
$ sudo a2enmod php7.1
$ sudo a2enmod php7.2
$ sudo a2enmod php7.3
$ sudo a2enmod php7.4
$ sudo a2enmod php8.0

----------- Restart Apache Server -----------
$ sudo systemctl restart apache2
Sau khi chuyển từ phiên bản này sang phiên bản khác, bạn có thể tìm thấy tệp cấu hình PHP của mình bằng cách chạy lệnh bên dưới.
------------ For PHP 5.6 ------------
$ sudo update-alternatives --set php /usr/bin/php5.6
$ php -i | grep "Loaded Configuration File"

------------ For PHP 7.0 ------------
$ sudo update-alternatives --set php /usr/bin/php7.0
$ php -i | grep "Loaded Configuration File"

------------ For PHP 7.1 ------------
$ sudo update-alternatives --set php /usr/bin/php7.1
$ php -i | grep "Loaded Configuration File"

------------ For PHP 7.2 ------------
$ sudo update-alternatives --set php /usr/bin/php7.2
$ php -i | grep "Loaded Configuration File"

------------ For PHP 7.3 ------------
$ sudo update-alternatives --set php /usr/bin/php7.3
$ php -i | grep "Loaded Configuration File"

------------ For PHP 7.4 ------------
$ sudo update-alternatives --set php /usr/bin/php7.4
$ php -i | grep "Loaded Configuration File"

------------ For PHP 8.0 ------------
$ sudo update-alternatives --set php /usr/bin/php8.0
$ php -i | grep "Loaded Configuration File"