1. Vì sao domain và DNS thường là nguồn gốc của rất nhiều lỗi?
Trong thực tế triển khai Web Server, rất nhiều sự cố có biểu hiện như:
Không truy cập được website
SSL không cấp được
Website lúc được lúc không
Redirect sai, loop không rõ nguyên nhân
Nhưng khi kiểm tra kỹ, nguyên nhân gốc lại nằm ở:
Domain và DNS được cấu hình thiếu nhất quán hoặc không được hiểu đúng.
DNS là lớp hạ tầng logic nằm giữa Internet và Web Server.
Nếu lớp này sai, các lớp phía trên gần như không thể hoạt động ổn định.
2. Vai trò của DNS trong kiến trúc Web Server
DNS có nhiệm vụ:
Chuyển đổi tên miền (domain) thành địa chỉ IP
Giúp trình duyệt biết cần kết nối tới server nào
Luồng truy cập cơ bản:

Nginx không xử lý DNS.
Nginx chỉ xử lý request sau khi DNS đã phân giải xong.
3. Các khái niệm DNS cần nắm trước khi cấu hình
3.1. Domain và subdomain
Domain chính:
cntt.itSubdomain:
www.cntt.it,blog.cntt.it,staging.cntt.it
Trong quản lý Web Server:
Mỗi domain/subdomain được xem là một website độc lập.
3.2. Bản ghi DNS quan trọng
Các bản ghi thường dùng:
A record: trỏ domain → IPv4
AAAA record: trỏ domain → IPv6
CNAME: trỏ domain → domain khác
MX: dùng cho email (không liên quan web)
Trong phạm vi Web Server, trọng tâm là:
A và AAAA record
4. Quy trình quản lý domain cho Web Server production
4.1. Nguyên tắc chung
Trong loạt bài này, quản lý domain tuân theo các nguyên tắc:
Domain phải trỏ trực tiếp về IP server
Không dùng trung gian không cần thiết
Tránh thay đổi DNS liên tục
Ghi chép rõ ràng các bản ghi DNS
4.2. Trỏ domain về Web Server
Ví dụ trỏ domain cntt.it:
A record:
Nếu có www:
TTL (Time To Live):
Khuyến nghị: 300–600 giây khi mới triển khai
Sau khi ổn định: có thể tăng lên
5. Quản lý www và non-www
5.1. Chọn một chuẩn duy nhất
Cần quyết định:
Dùng
cntt.itHay
www.cntt.it
Nguyên tắc:
Chỉ chọn một dạng làm chuẩn, dạng còn lại redirect.
5.2. DNS cho www
Có hai cách:
Cách 1: A record
Cách 2: CNAME
Cả hai đều hợp lệ, nhưng cần:
Phù hợp với cấu hình Nginx
Nhất quán với SSL sau này
6. Quản lý nhiều domain trên cùng một server
Khi server có nhiều website:
Mỗi domain:
Có bản ghi DNS riêng
Có virtual host riêng
DNS không phân biệt server block
Nginx phân biệt website bằng
server_name
DNS chỉ cần đảm bảo:
Tất cả domain trỏ đúng về IP server.
7. Kiểm tra DNS trước khi triển khai tiếp
7.1. Kiểm tra từ phía client
Trên máy local:
Hoặc:
Hoặc:
Xác nhận:
Domain trả về đúng IP server
Không bị trỏ nhầm sang IP cũ
7.2. Kiểm tra từ phía server
Trên server:
Điều này giúp:
Kiểm tra DNS toàn cầu
Phát hiện lỗi propagation
8. File /etc/hosts – chỉ dùng để test
Trong quá trình test:
Có thể dùng
/etc/hoststrên máy localKhông dùng
/etc/hoststrên server để “chữa cháy”
Nguyên tắc:
/etc/hosts không thay thế cho DNS trong production.
9. Những lỗi DNS phổ biến cần tránh
Trỏ domain về IP sai
Quên trỏ www hoặc non-www
TTL quá dài khi đang test
Trỏ domain về CDN / proxy nhưng không cấu hình phù hợp
Thay đổi DNS mà không ghi lại lịch sử
Những lỗi này thường dẫn đến:
Lỗi rất khó đoán, rất khó debug.
10. Checklist domain & DNS trước khi cài SSL
Trước khi sang bước SSL, cần đảm bảo:
Domain trỏ đúng IP server
www / non-www đã thống nhất
DNS đã propagate (có hiệu lực)
Truy cập HTTP hoạt động ổn định
Không dùng hosts file để “giả lập”
Nếu checklist này chưa đạt, không nên triển khai SSL.
11. Bài tiếp theo
Trong Bài 20, chúng ta sẽ bắt đầu phần rất quan trọng:
Cài đặt SSL miễn phí với Let’s Encrypt (Certbot)
Bài này sẽ hướng dẫn:
Cấp chứng chỉ SSL đúng cách
Tránh lỗi thường gặp
Chuẩn bị cho HTTPS chuẩn production
- Đăng nhập để gửi ý kiến