Để trỏ domain về VPS, bạn vào trang quản trị DNS của tên miền, tạo bản ghi A cho domain chính về IP VPS, thêm CNAME hoặc A record cho www, chờ DNS cập nhật rồi kiểm tra bằng trình duyệt, ping hoặc dig. Nếu website chưa chạy, cần phân biệt lỗi DNS, firewall và cấu hình web server.
Trỏ domain về VPS nghe có vẻ đơn giản: nhập IP vào DNS là xong. Nhưng khi làm thật, người mới thường gặp cảnh domain lúc vào được lúc không, www chạy còn non-www không chạy, hoặc domain đã về đúng IP nhưng website vẫn báo lỗi.
Lý do là domain chỉ giải quyết phần “đi tới máy chủ nào”. Website có chạy hay không còn phụ thuộc web server, firewall, SSL và cấu hình virtual host trên VPS.
Trỏ domain về VPS là gì?
Trỏ domain về VPS là cấu hình DNS để tên miền của bạn trả về địa chỉ IP của VPS. Khi người dùng nhập domain vào trình duyệt, hệ thống DNS tìm IP tương ứng, sau đó trình duyệt gửi request đến VPS đó.

Hãy nhớ điểm này: DNS không tự cài website cho bạn. Nếu VPS chưa có web server, chưa mở port hoặc chưa cấu hình domain, trình duyệt vẫn có thể báo lỗi dù bản ghi DNS đã đúng.
Cần chuẩn bị gì trước khi trỏ domain về VPS?
Bạn cần IP public của VPS, quyền truy cập trang quản trị DNS của domain, và biết website đang dùng domain chính hay subdomain. Nếu đang dùng email theo tên miền, hãy cẩn thận hơn vì chỉnh DNS sai có thể làm email ngừng nhận.
Checklist trước khi chỉnh DNS: IP VPS, domain/subdomain cần trỏ, bản ghi DNS hiện tại, thông tin email MX nếu có, web server đang nghe port 80/443, và kế hoạch rollback nếu đổi nhầm.
Bản ghi A, CNAME và nameserver khác nhau thế nào?
Bản ghi A dùng để trỏ một hostname về địa chỉ IPv4. Ví dụ example.com → 1.2.3.4. Đây là cách phổ biến nhất khi bạn muốn domain chính chạy trên VPS.
CNAME dùng để trỏ một hostname về hostname khác. Ví dụ www.example.com → example.com. CNAME tiện cho www, blog, app hoặc các subdomain phụ, nhưng không phải lúc nào cũng dùng được cho domain gốc tùy nhà cung cấp DNS.
Nameserver là nơi quản lý toàn bộ DNS của domain. Khi đổi nameserver, bạn gần như chuyển “quyền quản lý DNS” sang một hệ thống khác. Cách này mạnh hơn, nhưng cũng dễ làm mất bản ghi email nếu bạn không copy đủ.
| Loại bản ghi | Dùng khi nào? | Ví dụ |
|---|---|---|
| A record | Trỏ domain/subdomain về IP VPS | @ → 1.2.3.4 |
| CNAME | Trỏ www hoặc subdomain về hostname khác | www → example.com |
| NS | Chuyển nơi quản lý DNS | ns1.cloudflare.com |
Cách trỏ domain chính về VPS bằng A record
Đăng nhập trang quản trị domain hoặc DNS. Tìm khu vực DNS Records, Zone DNS hoặc Manage DNS. Tên gọi khác nhau tùy nhà đăng ký, nhưng logic giống nhau.
- Tạo hoặc sửa bản ghi loại A.
- Host/Name nhập
@hoặc để trống tùy giao diện. - Value/Points to nhập IP public của VPS.
- TTL có thể để Auto hoặc 300 giây nếu bạn đang test.
- Lưu thay đổi.
Sau khi lưu, chờ DNS cập nhật. Có nơi nhận rất nhanh, có nơi mất lâu hơn do cache. Nếu bạn vừa đổi từ nhà cung cấp cũ, đừng vội kết luận sai trong vài phút đầu.
Cách trỏ www về VPS bằng CNAME hoặc A record
Với www.example.com, bạn có hai cách phổ biến. Cách đầu là tạo CNAME:
Type: CNAME
Name: www
Value: example.com
Cách thứ hai là tạo A record cho www trỏ thẳng về IP VPS:
Type: A
Name: www
Value: 1.2.3.4
Cả hai đều dùng được trong nhiều trường hợp. Tôi thường chọn CNAME cho www để khi đổi IP, chỉ cần sửa domain chính. Nhưng nếu nhà cung cấp DNS hoặc CDN có yêu cầu riêng, hãy theo tài liệu của họ.
Cách trỏ subdomain về VPS
Nếu bạn muốn chạy blog, app hoặc staging trên subdomain, hãy tạo A record cho subdomain đó:
Type: A
Name: blog
Value: 1.2.3.4
Khi đó blog.example.com sẽ về IP VPS. Trên VPS, bạn vẫn cần cấu hình virtual host hoặc reverse proxy để web server biết subdomain này phục vụ thư mục/app nào.
Làm sao kiểm tra domain đã nhận IP VPS chưa?

Bạn có thể kiểm tra bằng công cụ online như DNS Checker, hoặc dùng lệnh trên máy tính:
dig example.com +short
nslookup example.com
ping example.com
Nếu kết quả trả về IP VPS, DNS đã đi đúng hướng. Nhưng nếu trình duyệt vẫn không vào website, hãy kiểm tra tiếp port, firewall và web server.
Ví dụ với VPS Linux, bạn có thể kiểm tra web server có nghe cổng 80/443 hay không:
sudo ss -tulpn | grep -E ':80|:443'
sudo systemctl status apache2
sudo systemctl status nginx
Nếu VPS nằm sau reverse proxy, Docker hoặc nền tảng deploy, đừng tự ý bật thêm Nginx/Apache chiếm port 80/443. Điều này dễ gây xung đột với hệ thống đang chạy.
Domain đã trỏ đúng nhưng website vẫn lỗi: nên kiểm tra gì?
Trước tiên, phân biệt lỗi DNS với lỗi website. Nếu dig trả về IP cũ, lỗi nằm ở DNS hoặc cache. Nếu dig trả về IP mới nhưng trình duyệt báo timeout, hãy kiểm tra firewall, cloud firewall và web server.
Nếu domain ra trang mặc định của Apache/Nginx, thường virtual host chưa đúng hoặc web server đang nhận request bằng block mặc định. Nếu domain báo lỗi SSL, có thể chứng chỉ chưa cấp cho đúng domain hoặc bạn bật HTTPS trước khi DNS nhận.
Đừng sửa tất cả cùng lúc. Khi domain lỗi, hãy kiểm tra theo thứ tự: DNS → IP → port → web server → virtual host → SSL → ứng dụng. Sửa nhiều thứ cùng lúc sẽ khiến bạn khó biết nguyên nhân thật.
Trỏ domain về VPS có ảnh hưởng email không?
Nếu bạn chỉ sửa A record của website, email thường không bị ảnh hưởng. Nhưng nếu bạn đổi nameserver hoặc xóa nhầm MX, SPF, DKIM, DMARC, email có thể lỗi gửi/nhận.
Vì vậy, trước khi đổi nameserver, hãy chụp lại hoặc export toàn bộ DNS hiện tại. Với doanh nghiệp đang dùng email theo tên miền, đây là bước rất đáng làm.
Nên dùng Cloudflare khi trỏ domain về VPS không?
Cloudflare giúp quản lý DNS dễ, có CDN/proxy và một số lớp bảo vệ cơ bản. Nhưng người mới cũng dễ nhầm giữa DNS-only và Proxied. Khi đang debug, tôi thường để DNS-only trước cho dễ kiểm tra IP thật, sau đó mới bật proxy nếu cần.
Nếu bật proxy, IP trả về sẽ là IP Cloudflare, không phải IP VPS. Điều đó không sai, nhưng bạn cần hiểu để không tưởng DNS đang trỏ nhầm.
Câu hỏi thường gặp về trỏ domain về VPS
Trỏ domain về VPS mất bao lâu?
Thông thường vài phút đến vài giờ, nhưng một số thay đổi DNS có thể mất tới 24–48 giờ tùy TTL, nhà đăng ký và cache DNS của mạng người dùng.
Nên dùng A record hay nameserver để trỏ domain về VPS?
Nếu bạn chỉ muốn domain về IP VPS, A record là cách dễ kiểm soát. Đổi nameserver phù hợp khi bạn muốn chuyển toàn bộ quản lý DNS sang nhà cung cấp khác.
Có cần tạo bản ghi cho www không?
Có nếu bạn muốn dùng cả www.example.com. Thường dùng CNAME www trỏ về domain chính hoặc A record www trỏ thẳng về IP VPS.
Vì sao domain đã trỏ đúng IP nhưng website vẫn không vào?
Có thể web server chưa chạy, port 80/443 bị chặn, firewall sai, virtual host chưa nhận domain hoặc SSL cấu hình chưa đúng. DNS đúng chỉ là một phần của quy trình.
Trỏ domain về VPS có ảnh hưởng email không?
Có thể ảnh hưởng nếu bạn sửa nhầm MX, SPF, DKIM hoặc đổi nameserver mà chưa copy đủ bản ghi email. Nếu domain đang dùng email, hãy sao lưu DNS trước khi chỉnh.

