KienThucVPS.com
VPS

Hướng dẫn cài đặt LAMP trên CentOS chi tiết nhất [Update 2022]

Ngày đăng: 20 Tháng Năm, 2022
   

Hướng dẫn cài đặt LAMP stack: Linux, Apache, MySQL/MariaDB và PHP/PHP-FPM mới nhất

Các phần mềm trong LAMP được cập nhật thường xuyên, do đó hướng dẫn của mình sẽ minh hoạ cho phiên bản mới nhất, ngoài ra có thể sẽ liệt kê thêm cho các phiên bản khác nếu cần thiết

Các bước cài đặt LAMP trên CentOS

1. Chuẩn bị

Để có thể bắt đầu cài đặt bạn cần chuẩn bị VPS đã cài sẵn CentOS mới. Nếu chưa biết cách mua VPS và cài đặt hệ điều hành server tham khảo bài viết Hướng dẫn cài đặt VPS toàn tập cho người mới bắt đầu

2. Cài đặt Apache

Đối với CentOS 8, CentOS Stream 9

Cập nhật phần mềm

dnf update

Cài đặt Apache webserver 2.4

dnf install httpd httpd-tools 

Một số lệnh hay dùng:

Cho phép khởi động Apache cùng với hệ điều hành:

systemctl enable httpd

Bật Apache Server

systemctl start httpd

Kiểm tra trạng thái

systemctl status httpd

Tắt Apache Server

systemctl stop httpd

Load lại cấu hình

systemctl reload httpd

Khởi động lại Apache

systemctl restart httpd

Mở tường lửa cho dịch vụ http, https, để có thể truy cập từ bên ngoài

firewall-cmd --permanent --zone=public --add-service=http

firewall-cmd --permanent --zone=public --add-service=https

firewall-cmd --reload

Kiểm tra xem server đã được cài đặt thành công chưa bằng cách truy cập từ trình duyệt địa chỉ IP server của bạn:

http://IP_address

Đối với CentOS 7 trở xuống

Update phần mềm

yum update httpd

Cài đặt apache

yum install httpd

Các bước còn lại tương tự

Cấu hình Apache Virtual Hosts

Mặc định nếu server của bạn chỉ có một website, thì bạn chỉ cần up code lên thư mục /var/www/html, nếu bạn muốn cấu hình thư mục web cho một tên miền cụ thể, hoặc trỏ nhiều tên miền về cùng 1 server thì bạn cần phải tạo Virtual Hosts

Tạo một file cấu hình ở thư mục /etc/httpd/conf.d, đặt tên ví dụ example.com.conf (thay bằng domain của bạn)

Nội dung file /etc/httpd/conf.d/example.com.conf

NameVirtualHost *:80

<VirtualHost *:80> 
     ServerAdmin [email protected]
     ServerName example.com
     ServerAlias www.example.com
     DocumentRoot /var/www/example.com/public_html/
     ErrorLog /var/www/example.com/logs/error.log 
     CustomLog /var/www/example.com/logs/access.log combined
</VirtualHost>

Tạo thư mục cho website: public_html là thư mục gốc của website

mkdir -p /var/www/example.com/public_html
mkdir /var/www/example.com/logs

Reload apache để server nhận cấu hình mới

service httpd reload

Tương tự nếu muốn trỏ một tên miền khác về server thì các bạn tạo file cấu hình tương tự như trên

3. Cài đặt MySQL/MariaDB

MySQl là hệ quản trị cơ sở dữ liệu phổ biến, quen thuộc với hầu hết mọi người. MariaDB được phát triển nhằm thay thế MySQL, vì thế nó hoàn toàn tương thích và cho một hiệu suất cao hơn so với MySQL

Cài đặt MariaDB

dnf install mariadb-server mariadb -y

Các thao tác với MariaDB

Bật tắt

systemctl start mariadb

systemctl stop mariadb

Bật khởi động cùng hệ điều hành

systemctl enable mariadb

Cài đặt MySQL 8.0

dnf install mysql mysql-server -y

Các thao tác với MariaDB

Bật tắt

systemctl start mysqld

systemctl stop mysqld

Bật khởi động cùng hệ điều hành

systemctl enable mysqld

Thiết lập mật khẩu root cho MySQL/MariaDB

Để đảm bảo an toàn, bạn cần thiết lập mật khẩu root cho MySQL hoặc MariaDB trước khi sử dụng

Các bạn chạy lệnh sau:

mysql_secure_installation

Hệ thống sẽ hỏi mật khẩu hiện tại, các bạn nhấn enter để bỏ qua

Enter current password for root (enter for none): 
OK, successfully used password, moving on...

Sau đó bạn trả lời các câu hỏi tiếp theo (hầu hết là nhấn y để đồng ý) cho tới bước tạo mật khẩu mới

4. Cài đặt PHP

Mặc định phiên bản PHP trên CentOS 9 là 7.2

Cài đặt php

dnf install php -y

Cài đặt một số gói thư viện hay dùng

dnf install php-cli php-curl php-mysqlnd php-gd php-opcache php-zip php-intl php-common php-bcmath php-imap php-imagick php-xmlrpc php-json php-readline php-memcached php-redis php-mbstring php-apcu php-xml php-dom php-redis php-memcached php-memcache

Hướng dẫn cài đặt PHP 8.0

Nếu bạn muốn cài đặt phiên bản PHP mới nhất, các bạn có thể cài đặt thông qua kho ứng dụng Remi

Bật CRB

dnf config-manager --set-enabled crb

Cài đặt kho EPEL

dnf install \
    https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm \
    https://dl.fedoraproject.org/pub/epel/epel-next-release-latest-9.noarch.rpm

Bật Remi repository

dnf install dnf-utils http://rpms.remirepo.net/enterprise/remi-release-9.rpm -y

Xoá cache

dnf update --refresh -y

Gỡ các phiên bản php trước nếu có

dnf remove php* -y

Bật PHP 8.0 module

dnf module enable php:remi-8.0 -y

Cuối cùng chúng ta có thể cài đặt PHP 8

dnf install php -y

Và các thư viện bổ sung

dnf install php-cli php-curl php-mysqlnd php-gd php-opcache php-zip php-intl php-common php-bcmath php-imap php-imagick php-xmlrpc php-json php-readline php-memcached php-redis php-mbstring php-apcu php-xml php-dom php-redis php-memcached php-memcache

5. Cài đặt phpMyAdmin

phpMyAdmin là một phần mềm mã nguồn mở phổ biến trên nền web để quản lý MySQL.

Cài đặt EPEL như ở bước 4, nếu đã cài rồi thì chúng ta có thể cái phpMyAdmin trực tiếp luôn

dnf install phpmyadmin

Reload Apache

systemctl restart httpd

Chỉnh sửa file phpMyAdmin.conf để cho phép truy cập phpMyAdmin từ bên ngoài

vi /etc/httpd/conf.d/phpMyAdmin.conf

Sửa lại như sau:

<Directory /usr/share/phpMyAdmin/>
AddDefaultCharset UTF-8

<IfModule mod_authz_core.c>
    # Apache 2.4
    <RequireAny>
    #Require ip 127.0.0.1
    #Require ip ::1
    Require all granted
    </RequireAny>
</IfModule>
<IfModule !mod_authz_core.c>
    # Apache 2.2
    Order Deny,Allow
    Deny from All
    Allow from 127.0.0.1
    Allow from ::1
</IfModule>
</Directory>

Bây giờ nhấn phím Esc key, và gõ :wq! sau đó nhấn Enter để lưu file.

Khởi động lại apache

systemctl restart httpd

Bây giờ bạn có thể truy cập domain(hoặc ip) /phpmyadmin từ trình duyệt

6. Kết

Như vậy là mình đã hướng dẫn cơ bản cách cài đặt LAMP và phpMyadmin trên CentOS 9, chúc các bạn thực hiện thành công.

Thẻ:, ,