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

Hướng dẫn chi tiết cách cài đặt web server Nginx - phần mềm mã nguồn mở miễn phí với hiệu suất cao, trên CentOS 7 & CentOS 8.

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

Nginx được phát âm là ‘engine-ex”, là một phần mềm mã nguồn mở. Nó có thể được dùng như một web server độc lập, cân bằng tải (load balancer), bộ đệm nội dung và reverse proxy cho các máy chủ HTTP và non-HTTP.

So với Apache, Nginx có thể xử lý một số lượng lớn các kết nối đồng thời và có dung lượng bộ nhớ nhỏ hơn trên mỗi kết nối.

Trước khi cài đặt thì bạn phải được đăng nhập với tư cách là một người dùng có quyền sudo và bạn không có Apache hoặc bất kỳ chương trình nào khác đang chạy trên cổng 80 hoặc 443.

Cài đặt Nginx trên CentOS 7 & 8

Khởi động CentOS 8, các gói Nginx đã có sẵn trong CentOS repositories.

Cài đặt Nginx trên CentOS 8 bằng cách nhập lệnh sau:

sudo yum install nginx

Khi cài đặt hoàn tất, hãy bật và khởi động Nginx với lệnh:

sudo systemctl enable nginx

sudo systemctl start nginx

Nhập lệnh sau để kiểm tra Nginx có đang chạy hay chưa?

sudo systemctl status nginx

Nó sẽ hiển thị thế này:

● nginx.service - The nginx HTTP and reverse proxy server

Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled; vendor preset: disabled)

Active: active (running) since Sun 2019-10-06 18:35:55 UTC; 17min ago

...

Thiết lập Firewall

FirewallD được cài đặt mặc định trên CentOS 8.

Trong thời gian cài đặt, Nginx tạo ra 1 tệp firewalld với các quy tắc được xác định trước để cho phép truy cập vào các cổng HTTP (80) và HTTPS (443).

Sử dụng lệnh sau để mở các cổng:

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

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

sudo firewall-cmd --reload

Bây giờ, bạn chỉ cần kiểm tra cài đặt Nginx của mình bằng cách mở http://YOUR_IP trên trình duyệt web. Bạn sẽ thấy trang chào mừng mặc định như ảnh bên dưới:

Hướng dẫn cài đặt Nginx trên CentOS 7 & CentOS 8 (1)

Cấu hình Nginx

  • Tất cả các tệp cấu hình Nginx để được đặt trong thư mục /etc/nginx/ 
  • Tệp cấu hình chính của Nginx là /etc/nginx/nginx.conf. 
  • Tạo một tệp cấu hình riêng cho mỗi tên miền giúp máy chủ dễ bảo trì hơn.
  • Các file server block Nginx phải kết thúc bằng .conf và được lưu trữ trong mục /etc/nginx/conf.d. Bạn có thể có nhiều server block nếu bạn muốn.
  • Các log file Nginx (access.log and error.log) được đặt trong mục /var/log/nginx/.
  • Bạn có thể đặt thư mục tài liệu gốc đến bất kỳ vị trí nào mà bạn muốn. Các vị trí phổ biến nhất cho webroot bao gồm:

/home//

/var/www/

/var/www/html/

/opt/

/usr/share/nginx/html

Xin chúc mừng, bạn đã cài đặt thành công Nginx trên máy chủ VPS CentOS 8 của mình. Bây giờ bạn đã sẵn sàng để bắt đầu triển khai các ứng dụng của mình và sử dụng Nginx làm máy chủ web hoặc proxy.

Chúc bạn thành công!