post-image

Hướng dẫn cài đặt PHP8 trên Ubuntu 20.04

Tổng quan

Trong bài này mình sẽ hướng dẫn các bạn cài đặt PHP8 trên Ubuntu 20.04, đây là phiên bản mới nhất tính đến thời điểm hiện tại.

PHP là một trong những ngôn ngữ lập trình phía server phổ biến hiện nay. Có rất nhiều framework và CMS nổi tiếng được làm từ PHP như: WordPress, OpenCart, Laravel, Zend, … Chính vì vậy, PHP không ngừng nâng cấp để đáp ứng cũng như cạnh tranh với những ngôn ngữ khác.

PHP 8 là phiên bản mới nhất của PHP tính đến thời điểm hiện tại. Nó giới thiệu một số thay đổi đột phá, cải tiến hiệu suất và rất nhiều tính năng mới như trình biên dịch JIT, kiểu union, match expression.

Bài viết này mình sẽ hướng dẫn bạn cách cài đặt PHP 8 trên Ubuntu 20.04 và tích hợp nó với Nginx và Apache.

Tại thời điểm hiện tại, kho lưu trữ Ubuntu 20.04 mặc định sẽ là phiên bản PHP 7.4. Chúng ta sẽ cài đặt PHP từ kho lưu trữ ondrej/php PPA.

Các bước thực hiện có thể áp dụng cho Ubuntu 18.04 (và cao hơn, kể cả bản not-LTS như 20.10) và tất cả bản phân phối dựa trên Ubuntu/Debian, bao gồm Kubuntu, PopOS và Elementary OS.

1. Thêm kho lưu trữ ppa:ondrej/php vào Ubuntu

Ondřej Surý, một nhà phát triển Debian, duy trì một kho lưu trữ bao gồm nhiều phiên bản của PHP. Để kích hoạt kho lưu trữ, hãy chạy lần lượt hai lệnh sau:

sudo apt install software-properties-common
sudo add-apt-repository ppa:ondrej/php

Sau khi PPA được kích hoạt là bạn có thể cài đặt PHP 8 rồi đấy.

2. Cài đặt PHP 8 trên Apache

Nếu bạn đang sử dụng Apache làm web server thì có thể xem PHP 8 như là một module, cụ thể như sau.

Bước 1: Cài đặt PHP như là một Apache Module

Chạy lần lượt hai lệnh sau:

sudo apt update
sudo apt install php8.0 libapache2-mod-php8.0Code language: CSS (css)

Khi cài đặt xong bạn hãy restart lại Apache để giúp nó nhận biết được module PHP8 vừa cài đặt xong. Hãy chạy lệnh sau:

sudo systemctl restart apache2

Bước 2: Cấu hình Apache với PHP-FPM

Php-FPM là một FastCGI process manager của PHP. Bạn hãy chạy lệnh sau để cài đặt các gói cần thiết

sudo apt update
sudo apt install php8.0-fpm libapache2-mod-fcgidCode language: CSS (css)

Theo mặc định thì PHP-FPM sẽ không được load ở Apache, vì vậy bạn phải chạy lệnh sau để kích hoạt nó.

sudo a2enmod proxy_fcgi setenvif
sudo a2enconf php8.0-fpmCode language: CSS (css)

Cuối cùng, hãy restart lại Apache để áp dụng những thay đổi.

systemctl restart apache2

3. Cài đặt PHP 8 trên Nginx

Khác với Apache, Nginx không hỗ trợ xử lý các file PHP, vì vậy bạn phải cài đặt PHP-FPM.

Chạy các lệnh sau để cài đặt các gói PHP và PHP FPM:

sudo apt update
sudo apt install php8.0-fpmCode language: CSS (css)

Khi cài đặt xong thì FPM sẽ tự động kích hoạt. Lúc này, nếu bạn muốn kiểm tra trạng thái thì hãy chạy lệnh sau.

systemctl status php8.0-fpmCode language: CSS (css)

Kết quả trả về sẽ có dạng như sau:

php8.0-fpm.service - The PHP 8.0 FastCGI Process Manager
     Loaded: loaded (/lib/systemd/system/php8.0-fpm.service; enabled; vendor preset: enabled)
     Active: active (running) since Wed 2021-04-21 10:10:47 UTC; 6s agoCode language: JavaScript (javascript)

Bây giờ bạn có thể chỉnh sửa domain máy chủ nginx và thêm dòng dưới đây vào để Nginx có thể xử lý các file PHP.

server {
 
    # . . . other code
 
    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php8.0-fpm.sock;
    }
}Code language: PHP (php)

Cuối cùng đừng quên restart lại Nginx để áp dụng những thay đổi đó.

sudo systemctl restart nginx

4. Cài đặt PHP extensions

PHP extensions là những thư viện libraries mở rộng những chức năng nào đó trong PHP. Nó được đóng gói lại thành các package và bạn dễ dàng cài đặt bằng lệnh sau:

sudo apt install php8.0-[extname]Code language: CSS (css)

Trong đó extname là tên của extension.

Ví dụ, mình sẽ cài đặt MySQL và GD extensions.

sudo apt install php8.0-mysql php8.0-gdCode language: CSS (css)

Sau đó hãy khởi động lại Nginx để kích hoạt các extionsion này.

5. Kiểm tra thông tin sau khi cài đặt PHP8 trên Ubuntu

Bây giờ bạn hãy tạo một file PHP bất kì nằm trên server, sau đó nhập đoạn code sau vào:

<?php
 
phpinfo();Code language: HTML, XML (xml)

Chạy vào website đang trỏ tới server này thì bạn sẽ thấy kết quả nó trả về chính là thông tin của PHP có version 8 mà ta đã cài.

Vậy là mình đã hướng dẫn xong cách cài đặt PHP8 trên Ubuntu Nginx Server. Chúc bạn thực hiện thành công!

Nguồn: https://freetuts.net/cai-dat-php8-tren-ubuntu-20-04-3620.html

Leave a Reply

Your email address will not be published.