Kiến thức SEO Kiến thức SEO

Robots.txt, Noindex và Sitemap khác nhau thế nào?

Phân biệt robots.txt, noindex, sitemap, canonical và redirect để kiểm soát crawl, indexability và discovery đúng cách.

SEO & Local SEO
Cập nhật: 23/08/2026 6 phút đọc

Nội dung chính

Robots.txt, noindex và sitemap thường bị dùng lẫn nhau, nhưng chúng giải quyết ba bài toán khác nhau. Robots.txt chủ yếu kiểm soát crawler được phép truy cập đường dẫn nào; noindex yêu cầu công cụ tìm kiếm không đưa trang vào chỉ mục; sitemap giúp khai báo các URL ưu tiên để crawler phát hiện và xử lý.

Nếu dùng sai, website có thể gặp tình huống rất khó chẩn đoán: chặn robots.txt nhưng vẫn thấy URL xuất hiện trên Google, gắn noindex nhưng bot không đọc được tín hiệu, hoặc đưa hàng nghìn URL redirect/noindex vào sitemap.

Bảng phân biệt nhanh

Công cụ Mục tiêu chính Có đảm bảo index không?
robots.txt Kiểm soát crawl theo đường dẫn/user-agent. Không.
noindex Yêu cầu không đưa URL vào kết quả tìm kiếm. Dùng để loại khỏi index, nhưng crawler phải thấy tín hiệu.
XML Sitemap Khai báo URL ưu tiên để crawler phát hiện. Không.
canonical Gợi ý URL đại diện trong nhóm duplicate. Không.
redirect Chuyển người dùng và crawler từ URL này sang URL khác. Không tự đảm bảo URL đích được index.

Robots.txt là gì?

Robots.txt là file nằm ở cấp host, thường có dạng https://example.com/robots.txt. Nó chứa quy tắc cho crawler biết đường dẫn nào được phép hoặc không được phép crawl.

Robots.txt phù hợp khi bạn muốn giảm hoặc kiểm soát crawl đối với nhóm URL không cần bot truy cập thường xuyên, chẳng hạn một số trang tìm kiếm nội bộ, bộ lọc hoặc khu vực kỹ thuật.

Robots.txt không phải noindex

Đây là nhầm lẫn phổ biến nhất. Nếu một URL bị robots.txt chặn nhưng có nhiều liên kết từ nơi khác, công cụ tìm kiếm vẫn có thể biết URL tồn tại. Vì crawler không vào được trang, nó cũng không đọc được meta robots noindex nằm trong HTML.

Vì vậy không nên dùng robots.txt như công cụ chính để yêu cầu một trang biến mất khỏi chỉ mục.

Noindex là gì?

Noindex là robots meta tag hoặc HTTP response header yêu cầu công cụ tìm kiếm không lập chỉ mục URL. Ví dụ trong HTML:

<meta name="robots" content="noindex">

Để noindex hoạt động, crawler cần truy cập được URL và thấy tín hiệu. Nếu bạn vừa chặn URL bằng robots.txt vừa gắn noindex trong HTML, bot có thể không đọc được noindex.

Khi nào nên dùng noindex?

  • Trang cảm ơn sau gửi form.
  • Trang kết quả tìm kiếm nội bộ không cần xuất hiện trên Google.
  • Một số trang tài khoản hoặc trang utility vẫn cần người dùng truy cập.
  • Trang tạm thời không nên xuất hiện trong kết quả tìm kiếm nhưng vẫn cần online.

Không dùng noindex như cách thay thế cho mật khẩu hoặc kiểm soát truy cập. Nếu nội dung thật sự riêng tư, cần cơ chế bảo vệ truy cập phù hợp.

XML Sitemap là gì?

XML Sitemap là file liệt kê các URL mà website muốn công cụ tìm kiếm biết và ưu tiên khám phá. Sitemap rất hữu ích với website lớn, website mới, site có nhiều trang sâu hoặc nội dung khó được phát hiện qua internal link.

Sitemap không phải danh sách “bắt buộc Google phải index”. Một URL nằm trong sitemap vẫn có thể không được index nếu bị noindex, redirect, canonical sang URL khác, trả lỗi hoặc không đủ điều kiện xử lý.

Khi nào dùng công cụ nào?

Tình huống Nên dùng
Không muốn crawler truy cập một nhóm đường dẫn robots.txt
Muốn URL vẫn truy cập được nhưng không xuất hiện trong Search noindex
Muốn giúp crawler phát hiện các URL indexable ưu tiên XML Sitemap
Nhiều URL gần giống nhau, cần một URL đại diện canonical
URL cũ đã được thay thế hoàn toàn redirect

Robots.txt và sitemap có thể dùng cùng nhau không?

Có. Robots.txt và sitemap có vai trò khác nhau. Website có thể dùng robots.txt để kiểm soát crawl một số khu vực, đồng thời khai báo sitemap để giúp crawler phát hiện URL indexable ưu tiên.

Tuy nhiên sitemap không nên chứa các URL mà bạn chủ động chặn, noindex, redirect hoặc canonical sang URL khác. Hãy giữ sitemap sạch và nhất quán với mục tiêu index.

Noindex và canonical có nên dùng cùng lúc không?

Không nên mặc định kết hợp hai tín hiệu này trên cùng một URL vì chúng truyền hai mục tiêu khác nhau: noindex yêu cầu loại URL khỏi kết quả, còn canonical gợi ý URL đại diện trong nhóm duplicate.

Nếu bạn muốn xử lý duplicate, hãy ưu tiên canonical và tín hiệu URL nhất quán. Nếu bạn muốn URL không được index, dùng noindex khi phù hợp. Tránh tạo tín hiệu mâu thuẫn rồi chờ Google tự suy đoán.

Sitemap và canonical phải nhất quán

URL trong sitemap nên là phiên bản canonical, indexable và trả về HTTP 200. Nếu sitemap liệt kê URL A nhưng canonical của A trỏ sang B, website đang gửi hai tín hiệu khác nhau.

Đọc thêm Canonical là gì và XML Sitemap là gì để xử lý hai lớp này riêng biệt.

Ví dụ thực tế

Trang cảm ơn sau gửi form

Trang vẫn cần người dùng truy cập nhưng không cần xuất hiện trên Search: dùng noindex, không cần chặn robots.txt.

URL bộ lọc tạo hàng nghìn biến thể

Có thể cần robots.txt hoặc giải pháp faceted navigation tùy kiến trúc, nhưng không nên giải quyết máy móc. Trước tiên phải xác định URL nào có giá trị tìm kiếm thật.

Trang dịch vụ chính

Nên crawl được, indexable, self-canonical và nằm trong sitemap nếu là URL ưu tiên. Internal link cũng nên trỏ nhất quán về URL này.

URL cũ sau migration

Nếu đã thay thế hoàn toàn, redirect sang URL mới thường phù hợp hơn noindex hoặc canonical đơn lẻ.

Checklist chẩn đoán URL không index

  1. Kiểm HTTP status.
  2. Kiểm robots.txt có chặn crawl không.
  3. Kiểm meta robots hoặc X-Robots-Tag có noindex không.
  4. Kiểm canonical đang trỏ về URL nào.
  5. Kiểm sitemap có chứa đúng URL ưu tiên không.
  6. Kiểm internal link có đường dẫn đến URL không.
  7. Dùng URL Inspection để xem trạng thái crawl/index thực tế.

Để phân biệt rõ hơn giữa phát hiện, crawl và index, xem Crawl và Index khác nhau thế nào.

Vai trò trong Technical SEO

Robots.txt, noindex, sitemap và canonical là các lớp kiểm soát khác nhau trong Technical SEO. Không nên tối ưu từng file/tag riêng lẻ mà bỏ qua mục tiêu cuối: URL quan trọng phải crawl được, render đúng, indexable, có canonical nhất quán và có internal link.

Đọc Technical SEO là gì để xem toàn bộ chuỗi kỹ thuật và Audit SEO để chẩn đoán theo bằng chứng.

Câu hỏi thường gặp

Chặn robots.txt có làm URL biến mất khỏi Google không?

Không nên kỳ vọng như vậy. Robots.txt kiểm soát crawl, không phải cơ chế noindex.

Sitemap có giúp tăng thứ hạng không?

Sitemap hỗ trợ discovery và quản lý URL ưu tiên; nó không phải tín hiệu bảo đảm ranking.

Noindex có cần xóa URL khỏi sitemap không?

Thông thường nên loại URL noindex khỏi sitemap nếu sitemap được dùng để khai báo các URL indexable ưu tiên.

Có nên đưa URL redirect vào sitemap?

Không. Sitemap nên chứa URL đích canonical, indexable và trả về 200.

Kết luận

Nhớ quy tắc ngắn: robots.txt = crawl, noindex = index, sitemap = discovery, canonical = URL đại diện, redirect = chuyển URL. Khi các tín hiệu này nhất quán, việc chẩn đoán và quản trị indexability sẽ rõ ràng hơn nhiều.

Nguồn tham khảo

  • Google Search Central — Block indexing with noindex: https://developers.google.com/search/docs/crawling-indexing/block-indexing
  • Google Search Central — Robots.txt: https://developers.google.com/search/docs/crawling-indexing/robots/intro
  • Google Search Central — Sitemaps: https://developers.google.com/search/docs/crawling-indexing/sitemaps/overview
Bạn muốn triển khai bài bản hơn?

Gửi URL và mục tiêu hiện tại để nhận đề xuất ưu tiên phù hợp.

Nhận tư vấn miễn phí →