Nginx là gì? Tính năng và cách cài đặt Nginx trên Windows

1078
01-11-2018
Nginx là gì? Tính năng và cách cài đặt Nginx trên Windows

Nginx là một trong những web server mã nguồn mở được ứng dụng rộng rãi hiện nay. Có thể nói, Nginx là một giải pháp tối ưu giúp người dùng xử lý nhiều kết nối đồng thời. Nếu bạn đang muốn tìm hiểu về Nginx cũng như cách cài đặt Nginx trên Windows, bạn nhất định không nên bỏ qua bài viết của Bizfly Cloud dưới đây.

Nginx là gì? 

Nginx là web server mã nguồn mở có tính năng mạnh mẽ phục vụ web HTTP. Với kiến thức đơn luồng và hướng sự kiện (event driven), Nginx giúp đảm bảo tính ổn định và hiệu suất tối đa, có khả năng thực hiện nhiều thao tác công việc như HTTP caching, load balancing hoặc sử dụng như một reverse proxy, media streaming và email proxy (POP3, IMAP,...). Chính vì vậy, đây được coi là kiến thức quan trọng đối với web developer, devOps và system administrator.

Nginx là gì

Nginx là web server mã nguồn mở có tính năng mạnh mẽ phục vụ web HTTP

Tính năng chính của NginX

  • Có khả năng xử lý hơn 10.000 kết nối cùng lúc với bộ nhớ thấp.
  • Phục vụ tập tin tĩnh (static files) và lập chỉ mục tập tin.
  • Tăng tốc reverse proxy bằng bộ nhớ đệm (cache), cân bằng tải đơn giản và khả năng chịu lỗi.
  • Hỗ trợ tăng tốc với bộ nhớ đệm của FastCGI, uwsgi, SCGI, và các máy chủ memcached.
  • Kiến trúc modular, tăng tốc độ nạp trang bằng nén gzip tự động.
  • Hỗ trợ mã hoá SSL và TLS.
  • Cấu hình linh hoạt, lưu lại nhật ký truy vấn.
  • Chuyển hướng lỗi 3XX-5XX.
  • Rewrite URL (URL rewriting) dùng regular expressions.
  • Hạn chế tỷ lệ đáp ứng truy vấn.
  • Giới hạn số kết nối đồng thời hoặc truy vấn từ 1 địa chỉ.
  • Khả năng nhúng mã PERL.
  • Hỗ trợ và tương thích với IPv6.
  • Hỗ trợ WebSockets.
  • Hỗ trợ truyền tải file FLV và MP4.
Tính năng chính của NginX

Cấu hình của Nginx

Trong tệp tin nginx.conf, các thiết lập quan trọng sẽ được mặc định với: Tệp tin được cấu trúc thành các ngữ cảnh (contexts). Đầu tiên là events, tiếp theo là http. Cấu trúc này cho phép một số lớp nâng cao cấu hình, do bên trong mỗi context có thể có các context lồng nhau khác kế thừa từ cha mẹ của chúng, tuy nhiên người dùng vẫn có thể ghi đè nếu cần.

Người dùng có thể tinh chỉnh một số yếu tố trong tệp này tùy theo nhu cầu sử dụng, tuy nhiên sẽ có những thiết lập là mặc định. 

Dưới đây là một số thành phần quan trọng trong các tệp tin cấu hình này: 

  • Worker_processes: Thiết lập định nghĩa số worker process mà Nginx sử dụng, do Nginx thuộc dạng đơn luồng và thường bằng với số lõi CPU. 
  • Worker_connection: Số lượng cho phép tối đa của các kết nối và cho mỗi worker process, chịu trách nhiệm báo cho các worker process xem số lượng người mà Nginx có thể phục vụ đồng thời là bao nhiêu.Con số càng lớn đồng nghĩa với số lượng người dùng mà Nginx phục vụ được sẽ càng cao.
  • Gzip: Các cài đặt dạng nén GZIP của Nginx response. Bằng cách kích hoạt tính năng này cùng với các thiết lập phụ khác và phần bị comment bởi mặc định có thể giúp cải thiện hiệu suất đáng kể.
  • Access_log & error_log: Những tệp tin mà Nginx sử dụng để ghi lại các lỗi và số lần truy cập. Các bản ghi này được sử dụng chủ yếu để gỡ lỗi hoặc sửa chữa. 

Cài đặt Nginx có thể hỗ trợ nhiều hơn một website. Các trang web sẽ được các tệp tin định nghĩa trong thư mục dưới dạng /etc/nginx/sites-available. Thư mục sites-available gồm cả các cấu hình cho virtual hosts. Điều này đồng nghĩa với việc máy chủ web có thể cấu hình cho các trang web với cấu hình đặc biệt.

Tuy nhiên trên thực tế, Nginx sẽ không thực sự làm gì với những trang web này trừ khi được symlink tới thư mục /etc/Nginx/sites-enabled.

Người dùng thường được cung cấp một số phương thức để đưa trang web online hoặc offline mà không phải xóa bất kỳ tệp tin nào. Từ đó, người dùng có thể có một trang web online để tạo ra symlink lên tới site-enabled rồi khởi động lại Nginx. Như vậy, người dùng có thể dễ dàng tạo tệp mới cho ứng dụng hoặc tiến hành chỉnh sửa một tệp tin mặc định.

Cách cài đặt Nginx

Đầu tiên, tải bản Nginx cho Windows (http://nginx.org/en/download.html) và giải nén.

Chạy Nginx bằng cách chạy file nginx.exe. Bạn cũng có thể khởi động Nginx, reload hoặc stop Nginx bằng cách sử dụng lệnh qua cmd.

Để quản lý Nginx bằng lệnh trong cmd, bạn nên đi đến thư mục root của Nginx. Mở Command Prompt hoặc run cmd:

cd /d d:\Web\nginx

Sau khi đã di chuyển đến thư mục root của Nginx, bạn có thể sử dụng các lệnh sau:

start nginx

# Khởi động nginx

nginx -s stop

# Dừng nginx

nginx -s quit

# Thoát nginx, cái này là thoát hết ứng dụng Nginx đang chạy

nginx -s reload

# Load lại nginx khi bạn thay đổi cấu hình của Nginx

nginx -s reopen

# Mở file logs

Sau khi khởi động nginx, bạn hãy vào http://localhost

Cách khởi động Nginx

Sau khi hoàn tất các cấu hình và di chuyển ứng dụng web đến với thư mục phù hợp, người dùng có thể thao tác để khởi động Nginx thông qua lệnh sudo service nginx start. Theo đó, người dùng có thể thay đổi cấu hình bất cứ lúc nào, không cần tải lại và sử dụng lệnh service nginx reload. Ở bước cuối cùng, có thể kiểm tra trạng thái của Nginx bằng lệnh service nginx status.

Theo Bizfly Cloud chia sẻ

>>> Xem thêm: Tổng quan và cách cài đặt NGINX

BizFly Cloud là nhà cung cấp dịch vụ điện toán đám mây với chi phí thấp, được vận hành bởi VCCorp.

BizFly Cloud là một trong 4 doanh nghiệp nòng cốt trong "Chiến dịch thúc đẩy chuyển đổi số bằng công nghệ điện toán đám mây Việt Nam" của Bộ TT&TT; đáp ứng đầy đủ toàn bộ tiêu chí, chỉ tiêu kỹ thuật của nền tảng điện toán đám mây phục vụ Chính phủ điện tử/chính quyền điện tử.

Độc giả quan tâm đến các giải pháp của BizFly Cloud có thể truy cập tại đây.

DÙNG THỬ MIỄN PHÍ và NHẬN ƯU ĐÃI 3 THÁNG tại: Manage.bizflycloud

TAGS: nginx
SHARE