0

Hướng Dẫn Cài Đặt và Sử Dụng Nginx Cơ Bản Cho Người Mới Bắt Đầu

Nginx là gì?

Nếu bạn là dân dev và chưa nghe đến Nginx thì chắc chắn bạn đang bỏ lỡ một công cụ cực kỳ mạnh trong thế giới backend! Nginx là một web server kiêm reverse proxy siêu nhẹ, siêu nhanh, chuyên dùng để:

  • Chạy web server tĩnh
  • Load balancing
  • Làm proxy cho các backend app (Node.js, PHP, v.v.)
  • Làm HTTPS termination

Bắt đầu cài đặt Nginx (cho Ubuntu/Debian)

sudo apt update
sudo apt install nginx

Xong xuôi, kiểm tra xem Nginx đã chạy chưa:

sudo systemctl status nginx

Nếu thấy active (running) là OK rồi. Truy cập thử http://localhost trên trình duyệt, bạn sẽ thấy màn hình “Welcome to Nginx”.

Cấu trúc thư mục quan trọng

  • /etc/nginx/nginx.conf: file config chính
  • /etc/nginx/sites-available/: nơi bạn tạo các file config cho từng website
  • /etc/nginx/sites-enabled/: nơi kích hoạt các site (thông qua symlink)
  • /var/www/html/: thư mục chứa code web mặc định

Tạo website riêng

Ví dụ: Bạn có 1 project React build ra thư mục /var/www/my-site.

  1. Tạo file config mới: sudo nano /etc/nginx/sites-available/my-site

  2. Dán vào nội dung ví dụ:

server {
    listen 80;
    server_name yourdomain.com;

    root /var/www/my-site;
    index index.html;

    location / {
        try_files $uri $uri/ /index.html;
    }
}
  1. Kích hoạt config: sudo ln -s /etc/nginx/sites-available/my-site /etc/nginx/sites-enabled/

  2. Kiểm tra lỗi config: sudo nginx -t

  3. Reload lại nginx: sudo systemctl reload nginx

Cấu hình HTTPS với Let's Encrypt

Miễn phí 100% và cực dễ:

sudo apt install certbot python3-certbot-nginx
sudo certbot --nginx

Kết

Nginx vừa nhẹ, vừa mạnh, và siêu dễ dùng nếu bạn chịu thử. Học xong có thể dùng làm reverse proxy cho Node.js, chạy site tĩnh build từ Next.js hay React, hoặc triển khai web app đi thi hackathon cũng không thành vấn đề.


All rights reserved

Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí