Bài viết này sẽ hướng dẫn bạn cách cài đặt và cấu hình máy chủ Nginx trên hệ điều hành của bạn. Nginx là một máy chủ web và máy chủ proxy phổ biến được sử dụng rộng rãi trong lĩnh vực phát triển web. Bạn sẽ được hướng dẫn từ quá trình cài đặt đến cấu hình cơ bản của Nginx trên hệ điều hành mà bạn đang sử dụng.
Giới thiệu về Nginx
Nginx là một Web Server nhẹ, mạnh mẽ và sử dụng kiến trúc đơn luồng, hướng sự kiện vì thế nó sử dụng tài nguyên hợp lý hơn Apache Server. Vì vậy nó thường được sử dụng phổ biến với các nhiệm vụ như là Load Balancing, HTTP caching, hay sử dụng như một Reverse Proxy.
Cài đặt Nginx trên hệ điều hành
Để cài đặt Nginx Web Server sử dụng lệnh sau:
# Trên CentOS / RHEL / Fedora sudo yum install -y nginx # Trên Ubuntu / Debian / LinuxMint sudo apt install -y nginx
Khởi động và cho phép khởi động khi boot hệ điều hành:
sudo systemctl start nginx.service sudo systemctl enable nginx.service
Kiểm tra Service đã hoạt động chưa:
sudo systemctl status nginx.service
Mặc định tường lửa trên HDH sẽ chặn cổng 80 của Nginx, để mở cổng chúng ta sử dụng lệnh sau:
# Trên CentOS / RHEL / Fedora sudo firewall-cmd --zone=public --add-port=80/tcp --permanent sudo firewall-cmd --reload # Trên Ubuntu / Debian / LinuxMint sudo ufw allow 'Nginx Full'
Mở trình duyệt và truy cập với đường dẫn http://<Hostname hoặc IP Address> mà hiển thị trang “Test Page” của Nginx thì chúng ta đã cài đặt thành công.
Cấu hình cơ bản của Nginx
– Danh sách file và thư mục quan trọng:
- /etc/nginx/nginx.conf: File config chính
- /etc/nginx/conf.d: Thư mục chưa các file config của riêng bạn
- /etc/nginx/sites-available: Thư mục chưa các file config VirtualHost, cho phép chúng ta cấu hình riêng biệt cho từng website
- /etc/nginx/sites-available/default: File config Virtual Hosts mặc định
– Cấu hình Virtual Hosts
– Cấu hình Log:
Thông thường, log của Nginx được lưu ở trong thư mục /var/log/nginx gồm có 2 file là:
- access.log: Lưu lại thông tin truy cập tới Web Server
- error.log: Lưu lại thông tin lỗi
– Cấu hình gzip: Gzip là phương pháp nén dữ liệu trả về của server, giúp giảm tải thời gian tải tài nguyền từ server về client.
Để bật gzip trên Nginx chúng ta sửa file config /etc/nginx/nginx.conf
– Cấu hình Reverse Proxy trên Nginx
Cấu hình bảo mật và khả năng mở rộng của Nginx
- Thiết lập SSL/TLS để bảo mật kết nối và hỗ trợ HTTPS.
- Xử lý cấu hình tường lửa (firewall) và bảo vệ máy chủ Nginx khỏi các cuộc tấn công.
- Tích hợp Nginx với các công nghệ bảo mật khác như Let’s Encrypt.
Bằng cách làm theo hướng dẫn trong bài viết này, bạn sẽ có khả năng cài đặt và cấu hình máy chủ Nginx trên hệ điều hành mà bạn đang sử dụng. Điều này cho phép bạn triển khai ứng dụng web và tận dụng những lợi ích của Nginx như tốc độ xử lý cao, khả năng mở rộng linh hoạt và bảo mật.