Hướng dẫn cài đặt PHP trên CentOS 7

Hướng dẫn cách cài đặt PHP trên CentOS 7; nâng cấp lên PHP 7.0, 7.1, 7.2 và 7.3 trên hệ thống CentOS 7, cũng như cách tích hợp PHP với Nginx và Apache.

Ngoài ra, trước khi cài đặt phiên bản PHP 7.x bạn cần chắc chắn rằng các ứng dụng của bạn sẽ hỗ trợ nó.

Hướng dẫn cài đặt PHP trên CentOS 7

Điều kiện để cài đặt PHP trên CentOS 7

Trước khi bắt đầu cài đặt, bạn cần đăng nhập vào máy chủ của mình bằng một tài khoản (user account) có quyền sudo hoặc root user. Cách tốt nhất chính là chạy các lệnh quản trị như sudo user thay vì root. Nếu bạn không có sudo user cho hệ thống của mình thì bạn có thể khởi tạo.

Kích hoạt Remi repository

Các gói PHP 7.x có sẵn trong một vài repository khác nhau. Chúng tôi sẽ sử dụng Remi repository, nó cung cấp các phiên bản mới hơn của các gói phần mềm khác nhau bao gồm cả PHP.

Remi repository phụ thuộc EPEL repository. Chạy lệnh sau để kích hoạt cả Remi và EPEL repository.

sudo yum install epel-release yum-utils

sudo yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm

Yum có thể nhắc bạn nhập khóa GPG. Nhập y và nhấn Enter.

Tiếp theo đây sẽ là giới thiệu cách cài đặt PHP 7.x bằng cách bật Remi repository thích hợp. Nếu bạn đã cài đặt PHP 5.4 cho hệ thống, yum sẽ cập nhật các gói PHP.

Cài đặt PHP 7.x trên CentOS 7

Cài đặt PHP 7.3 trên CentOS 7

PHP 7.3 là phiên bản mới nhất của PHP.  Hầu hết các ứng dụng, famework mới nhất của PHP bao gồm WordPress, Drupal, Joomla và Laravel đều được hỗ trợ đầy đủ PHP 7.3.

Thực hiện theo các bước bên dưới để cài đặt PHP 7.3 trên CentOS 7.

Bước 1: Cài đặt Remi:

sudo yum-config-manager --enable remi-php73

Bước 2: Cài đặt PHP 7.3 và một số module PHP phổ biến:

sudo yum install php php-common php-opcache php-mcrypt php-cli php-gd php-curl php-mysqlnd

Bước 3: Sau khi cài đặt thành công, để kiểm tra lại thông tin phiên bản PHP đang được kích hoạt lên server, bạn sử dụng lệnh:

php -v




PHP 7.3.1 (cli) (built: Jan  8 2019 13:55:51) ( NTS )

Copyright (c) 1997-2018 The PHP Group

Zend Engine v3.3.1, Copyright (c) 1998-2018 Zend Technologies

    with Zend OPcache v7.3.1, Copyright (c) 1999-2018, by Zend Technologies

Cài đặt PHP 7.2 trên CentOS 7

Bước 1: Đầu tiên kích hoạt Remi PHP 7.2 bằng cách chạy lệnh sau:

sudo yum-config-manager --enable remi-php72

Bước 2: Sau khi đã kích hoạt thì tiến hành cài đặt PHP 7.2 và một vài module PHP phổ biến:

sudo yum install php php-common php-opcache php-mcrypt php-cli php-gd php-curl php-mysqlnd

Bước 3: Sau khi cài đặt thành công, để kiểm tra lại thông tin phiên bản PHP đang được kích hoạt lên server, bạn sử dụng lệnh:

php -v




PHP 7.2.9 (cli) (built: Aug 15 2018 09:19:33) ( NTS )

Copyright (c) 1997-2018 The PHP Group

Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies

    with Zend OPcache v7.2.9, Copyright (c) 1999-2018, by Zend Technologies

Cài đặt PHP 7.1 trên CentOS 7

Các bước cài đặt PHP 7.1

Bước 1: Kích hoạt Remi PHP 7.1 bằng lệnh:

sudo yum-config-manager --enable remi-php71

Bước 2: Cài đặt PHP 7.1 và một vài module PHP phổ biến:

sudo yum install php php-common php-opcache php-mcrypt php-cli php-gd php-curl php-mysql

Bước 3: Kiểm tra xem đã cài đặt thành công hay chưa bằng lệnh:

php -v




PHP 7.1.21 (cli) (built: Aug 15 2018 17:56:55) ( NTS )

Copyright (c) 1997-2018 The PHP Group

Zend Engine v3.1.0, Copyright (c) 1998-2018 Zend Technologies

    with Zend OPcache v7.1.21, Copyright (c) 1999-2018, by Zend Technologies

Cấu hình PHP 7.x

Cấu hình PHP 7.x để làm việc với Apache

Nếu bạn đang sử dụng Apache làm web server của mình thì chỉ cần restart lại dịch vụ Apache bằng dòng lệnh sau:

sudo systemctl restart httpd

Cấu hình PHP 7.x để làm việc với Nginx

Khác với Apache, Nginx không có hỗ trợ tích hợp để xử lý các tệp PHP, vì vậy chúng ta cần cài đặt một ứng dụng riêng tư như PHP FPM, nó sẽ xử lý các tệp PHP.

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

sudo yum install php-fpm

Theo mặc định, PHP FPM sẽ chạy dưới dạng user apache trên cổng 9000. Chúng tôi sẽ thay đổi user từ nginx và chuyển đổi từ TCP socket sang Unix socket. Để làm được như vậy, chỉnh sửa lại các dòng màu vàng bên dưới:

/etc/php-fpm.d/www.conf

...

user = nginx

...

group = nginx

...

listen = /run/php-fpm/www.sock

...

listen.owner = nginx

listen.group = nginx

Đảm bảo rằng thư mục /var/lib/php có quyền sở hữu chính xác:

chown -R root:nginx /var/lib/php

Khi đã thực hiện các thay đổi, kích hoạt và khởi động dịch vụ PHP FPM bằng lệnh:

sudo systemctl enable php-fpm

sudo systemctl start php-fpm

Tiếp theo, chỉnh sửa chỉ thị máy chủ ảo Nginx và thêm vào location block để Nginx có thể xử lý các tệp PHP.

server {




    # . . . other code




    location ~ \.php$ {

        try_files $uri =404;

        fastcgi_pass unix:/run/php-fpm/www.sock;

        fastcgi_index index.php;

        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

        include fastcgi_params;

    }

}

Để cấu hình mới có hiệu lực, hãy restart lại Nginx:

sudo systemctl restart nginx

Vậy là bạn đã cài đặt xong PHP trên CentOS 7. Chúc bạn thành công!