![[Case Study] – bị thay đổi IP VPS và Nginx không hoạt động [Case Study] – bị thay đổi IP VPS và Nginx không hoạt động](https://vutruso.com/wp-content/uploads/2024/03/nginx-server-480x300.png)
Nginx snippets là gì và cách sử dụng Nginx snippets
Sơ đồ trang
Nginx snippets là gì?
Kể từ phiên bản Nginx 1.18 thì Nginx đã hỗ trợ snippets “nginx snippet” là tập hợp các block cấu hình Nginx được đóng gói lại thành một đoạn mã giúp bạn tái sử dụng được nhiều lần. Thay vì lặp đi lặp lại các phần cấu hình giống nhau trong nhiều tệp cấu hình, bạn có thể tạo một snippet và sau đó sử dụng nó trong các vị trí khác nhau.
nginx snippet bạn có thể hiểu đơn giản là 1 hoặc nhiều file chức năng nào đó cần bổ sung vào block server nginx mà thôi, kiểu giống ngôn ngữ lập trình vd PHP include 1 file chức năng nào đó vào để chạy
Sử dụng “nginx snippets” giúp nhà quản trị hệ thống tiết kiệm thời gian và giảm lỗi khi cấu hình Nginx, đồng thời cũng tăng tính linh hoạt và dễ dàng trong việc quản lý các tệp cấu hình của máy chủ web.
Một số trường hợp hay sử dụng snippets trong Nginx
- SSL Configuration: Bạn có thể đặt tất cả cấu hình SSL (chẳng hạn như khóa và chứng chỉ SSL) vào một snippet và sau đó bao gồm nó trong các server block cụ thể.
- Rewrite Rules: Đặt các luật rewrite phức tạp hoặc tùy chỉnh vào một snippet để sử dụng lại chúng trong nhiều vị trí khác nhau trong cấu hình.
- Security Rules: Bạn có thể đặt các quy tắc bảo mật (chẳng hạn như giới hạn truy cập vào các thư mục nhất định) vào một snippet và bao gồm chúng trong các server block của bạn.
Ví dụ chi tiết về cách sử dụng Nginx snippets
Để sử dụng Nginx snippets (đoạn mã cấu hình được tổ chức lại sử dụng lại) trong cấu hình Nginx của bạn, bạn cần tuân theo các bước sau:
Tạo thư mục snippets hoặc thư mục bất kỳ bạn muốn
1. Đầu tiên, bạn nên tạo một thư mục để chứa các snippets của bạn. Thường thì, thư mục này được đặt tại /etc/nginx/snippets/
trên hầu hết các hệ thống. Sử dụng lệnh sau để tạo thư mục này (nếu nó chưa tồn tại):
sudo mkdir -p /etc/nginx/snippets/
2. Tạo snippets
Tạo các tệp văn bản cho các snippets bạn muốn sử dụng. Ví dụ, để tạo một snippet cho cấu hình tường lửa, bạn có thể sử dụng lệnh sau:
Bài viết liên quan
sudo nano /etc/nginx/snippets/firewall.conf
Mở file firewall.conf lên và bạn có thể viết rules vào sau đó lưu tệp và thoát.
3. Sử dụng Snippets
Bây giờ, bạn có thể sử dụng snippets này trong tệp cấu hình chính của bạn. Chẳng hạn, để sử dụng snippet firewall.conf trong một server block, bạn có thể thêm dòng include trong server block tương ứng:
server { listen 443 ssl; server_name vutruso.com; include snippets/firewall.conf; # Include the firewall configuration snippet # Cac cau hinh khac neu co # ... }
Bằng cách này, bạn có thể duy trì các phần khác nhau của cấu hình của mình một cách dễ dàng và sử dụng lại chúng trong nhiều vị trí trong tệp cấu hình chính của bạn.
4. Kiểm tra cấu hình và nạp lại Nginx
Trước khi nạp lại Nginx để áp dụng thay đổi, hãy kiểm tra cấu hình của bạn để đảm bảo rằng không có lỗi cú pháp. Sử dụng lệnh sau:
sudo nginx -t
Nếu không có lỗi, bạn có thể nạp lại Nginx để áp dụng cấu hình mới:
sudo systemctl reload nginx
5. Kiểm tra cấu hình và tái sử dụng
Bây giờ, cấu hình của bạn đã sử dụng snippet. Hãy đảm bảo rằng snippet được áp dụng như mong muốn bằng cách kiểm tra trang web của bạn hoặc kiểm tra tệp cấu hình Nginx của bạn.
Điều này giúp bạn tổ chức và sử dụng lại cấu hình Nginx một cách hiệu quả và dễ dàng cập nhật, duy trì và mở rộng cấu hình của bạn mà không cần sao chép các đoạn mã cấu hình trong nhiều nơi khác nhau.