Cách cài đặt Nginx với PHP và MySQL (LEMP Stack) trên CentOS 7.6

theanh

Administrator
Nhân viên
Hướng dẫn này chỉ cho bạn cách cài đặt Nginx trên máy chủ CentOS 7 có hỗ trợ PHP (thông qua PHP-FPM) và hỗ trợ MySQL (MariaDB).

LEMP là gì?​

Nginx (phát âm là "engine x") là một máy chủ HTTP miễn phí, mã nguồn mở và hiệu suất cao. Nginx được biết đến với tính ổn định, bộ tính năng phong phú, cấu hình đơn giản và mức tiêu thụ tài nguyên thấp.

Điều kiện tiên quyết của LEMP​

Trong hướng dẫn này, tôi sẽ sử dụng tên máy chủ server1.example.com với địa chỉ IP 192.168.1.100. Các thiết lập này có thể khác nhau đối với bạn, vì vậy bạn phải thay thế chúng khi thích hợp.

Tôi sẽ sử dụng trình chỉnh sửa nano trong hướng dẫn này để chỉnh sửa các tệp cấu hình. Nano có thể được cài đặt như thế này.
Mã:
yum -y install nano
Tôi khuyên bạn nên cài đặt tường lửa. Nếu bạn chưa cài đặt firewalld và muốn sử dụng tường lửa, hãy cài đặt nó bằng các lệnh sau:
Mã:
yum -y installfirewalld
khởi động tường lửa và cho phép tường lửa được khởi động khi khởi động.
Mã:
systemctl start firewalld.service
systemctl enable firewalld.service
Tiếp theo, mở cổng SSH của bạn để đảm bảo rằng bạn có thể kết nối với máy chủ bằng SSH.
Mã:
firewall-cmd --permanent --zone=public --add-service=ssh
firewall-cmd --reload

Bật các kho lưu trữ CentOS bổ sung​

Nginx mới nhất không có sẵn trong các kho lưu trữ CentOS chính thức, vì vậy chúng tôi bao gồm kho lưu trữ của dự án Nginx để cài đặt:
Mã:
nano /etc/yum.repos.d/nginx.repo
Mã:
[nginx]name=nginx repobaseurl=http://nginx.org/packages/centos/$releasever/$basearch/gpgcheck=0enabled=1

Cài đặt MySQL (MariaDB)​

Đầu tiên, chúng tôi cài đặt MariaDB để thay thế MySQL. MariaDB là một nhánh miễn phí của MySQL. Chạy lệnh này trên shell để cài đặt máy chủ cơ sở dữ liệu MariaDB:
Mã:
yum -y install mariadb mariadb-server net-tools
Sau đó, chúng ta tạo các liên kết khởi động hệ thống cho MariaDB (để nó tự động khởi động bất cứ khi nào hệ thống khởi động) và khởi động máy chủ MariaDB:
Mã:
systemctl enable mariadb.service
systemctl start mariadb.service
Bây giờ hãy kiểm tra xem mạng đã được bật chưa. Xin lưu ý rằng dịch vụ MraiDB có tên là mysql vì đây là máy chủ cơ sở dữ liệu tương thích. Chạy
Mã:
netstat -tap | grep mysql
Nó sẽ hiển thị nội dung tương tự như sau:
Mã:
[root@server1 ~]# netstat -tap | grep mysql
tcp 0 0 0.0.0.0:mysql 0.0.0.0:* LISTEN 19842/mysqld
Chạy:
Mã:
mysql_secure_installation
để đặt mật khẩu cho người dùng root(nếu không, bất kỳ ai cũng có thể truy cập vào cơ sở dữ liệu MySQL của bạn!):
Mã:
[root@example ~]# mysql_secure_installation
/usr/bin/mysql_secure_installation: dòng 379: find_mysql_client: lệnh không tìm thấy
Mã:
LƯU Ý: KHUYẾN NGHỊ CHẠY TẤT CẢ CÁC PHẦN CỦA KỊCH BẢN NÀY CHO TẤT CẢ CÁC MÁY CHỦ
MariaDB ĐANG SỬ DỤNG TRONG SẢN XUẤT! VUI LÒNG ĐỌC KỸ TỪNG BƯỚC!
Mã:
Để đăng nhập vào MariaDB để bảo mật, chúng ta sẽ cần
mật khẩu hiện tại cho người dùng root. Nếu bạn vừa cài đặt MariaDB và
chưa đặt mật khẩu root, mật khẩu sẽ để trống,
do đó, bạn chỉ cần nhấn enter ở đây.
Mã:
Nhập mật khẩu hiện tại cho root (enter nếu không có):
OK, mật khẩu đã sử dụng thành công, tiếp tục...
Mã:
Đặt mật khẩu root đảm bảo rằng không ai có thể đăng nhập vào MariaDB
người dùng root mà không có quyền hạn thích hợp.
Mã:
Đặt mật khẩu root? [Y/n]
 
Back
Bên trên