- Các bạn cài đặt theo hướng dẫn của bài:Hướng dẫn cài đặt Nginx trên CentOS 7
Bước 1: Các bạn sử dụng câu lệnh yum để cài đặt
sudo yum install mariadb-server mariadb
Bước 2: Tiến hành kích hoạt dịch vụ MariaDB
sudo systemctl start mariadb
Bước 3: Để tiến hành những thiết lập ban đầu cho MySQL, bạn chạy câu lệnh
sudo mysql_secure_installation
Bước 3: Kích hoạt MariaDB khởi chạy cùng hệ thống
sudo systemctl enable mariadb
3. Cài đặt PHP
Bước 1: Cài đặt REMI Repository
sudo yum install //rpms.remirepo.net/enterprise/remi-release-7.rpm
Bước 2: Tiến hành tìm kiếm các repo chứa bản PHP mà chúng ta cần
yum --disablerepo="*" --enablerepo="remi-safe" list php[7-9][0-9].x86_64
Chúng ta có thể thấy có rất nhiều bản PHP từ 7.0 tới 8.0 trong hình
Bước 3: Chẳng hạn ở đây tôi muốn cài PHP7.4 nên chúng ta sẽ kích hoạt repo tương ứng
sudo yum install yum-utils - y sudo yum-config-manager --enable remi-php74
Bước 4: Tiến hành cài đặt PHP
sudo yum install php php-mysqlnd php-fpm
Bước 5: Kiểm tra phiên bản PHP xem đã cài đặt đúng chưa
php -v
Bước 6: Tiến hành chỉnh sửa file cấu hình của PHP
yum install nano -y sudo nano /etc/php-fpm.d/www.conf
Tìm tới đoạn sau
Sửa Apache thành Nginx
Tìm tới dòng listen =
Và sửa thành:
sudo systemctl start mariadb0
Tìm tới đoạn này
Sửa lại thành
sudo systemctl start mariadb1
Cuối cùng lưu files lại
Bước 5: Tiến hành kích hoạt PHP-FPM
sudo systemctl start mariadb24. Cấu hình NGINX để xử lí file PHP
Bước 1: Mở file cấu hình NGINX
sudo systemctl start mariadb3
Dán vào đoạn cấu hình sau
sudo systemctl start mariadb4
Bước 2: Khởi chạy lại NGINX
sudo systemctl start mariadb55. Kiểm tra PHP đã hoạt động hay chưa
Bước 1: Tạo ra một file info.php
sudo systemctl start mariadb6
Gõ nội dung sau vào
sudo systemctl start mariadb7
Bước 2: Truy cập domain/info.php thấy như hình là thành công
Bài này dành cho ai đang cần deploy PHP mà k dùng Apache, thích dùng Nginx hơn cơ [như mình chẳng hạn]. Blog này cũng đang sử dụng WordPress nên mình cũng note lại các bước để nhỡ đâu sau này chính mình lại cần tới nó 😀
1. Nginx
Nguồn tham khảo: //www.digitalocean.com/community/tutorials/how-to-install-nginx-on-ubuntu-18-04
$ sudo apt update
$ sudo apt install nginx
$ sudo ufw allow 'Nginx Full'
Check cài đặt thành công chưa?
$ systemctl status nginx
Lúc này bạn có thể truy cập bằng trình duyệt tới đường dẫn IP của server tại port 80 [hoặc gõ tên domain nếu đã gắn domain], nó sẽ hiển thị trang landing page mặc định của Nginx.
Trang landing này nằm ở thư mục
$ systemctl status nginx
4, bạn có thể edit lại source code html của nó tùy theo nhu cầu của mình 😀2. MySQL
Cài đặt MySQL và tạo user root:
$ sudo apt install mysql-server
$ sudo mysql_secure_installation
Kiểm tra MySQL có chặn kết nối từ remote không nhé, nếu có thì mình thiết lập bỏ tính năng đó
$ sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
# bind-address = 127.0.0.1
# Xóa/Comment cái dòng bên trên lại nha
$ sudo service mysql restart
$ sudo ufw allow 3306/tcp
[Nếu bạn không dùng WordPress, hãy bỏ qua và chuyển sang bước 3]
$ mysql -u root -p
Nhập password của user root vừa tạo, sau đó tạo user và DB dành riêng cho WordPress:
mysql> CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
mysql> GRANT ALL ON wordpress.* TO 'wordpressuser'@'%' IDENTIFIED BY 'password';
3. PHP
$ sudo add-apt-repository universe
$ sudo apt install php-fpm php-mysql
Tích hợp PHP với Nginx:
$ sudo nano /etc/nginx/sites-available/example.com
Bạn có thể thay example.com bằng bất cứ tên nào mình tùy thích, tốt nhất là đặt theo domain hoặc tên của project, vì có thể sau này mình sẽ gặp trường hợp deploy nhiều project/domain trên cùng 1 máy.
$ systemctl status nginx
0$ systemctl status nginx
1Test config và reload nếu không có lỗi:
$ systemctl status nginx
2Đến đây là đã kết thúc, mình chạy WordPress trên subdomain nên nếu bạn nào tham khảo cấu hình cho subdomain thì có thể xem bên dưới nha: