robots.txt: nó là gì và cách hoạt động
robots.txt là một tệp văn bản đặt ở thư mục gốc của website khai báo quy tắc crawl cho web crawlers (User-agent, Disallow, Allow, Sitemap). Nó điều khiển hành vi crawling và có thể ảnh hưởng gián tiếp tới việc lập chỉ mục nhưng không quyết định thứ hạng trực tiếp.

Robots.txt là gì?
robots.txt (Robots Exclusion Protocol) là một tệp văn bản đơn nằm ở thư mục gốc của host — ví dụ https://example.com/robots.txt — cung cấp các chỉ dẫn crawl đơn giản cho user-agents (web crawlers). Nó công khai và máy có thể đọc được; không dùng để xác thực hay che giấu nội dung. Crawlers đọc robots.txt để biết những đường dẫn chủ site muốn họ tránh hoặc ưu tiên.
Tại sao robots.txt quan trọng với SEO
Robots.txt kiểm soát việc crawling. Crawling là giai đoạn khám phá và tải nội dung của cách công cụ tìm kiếm tương tác với trang của bạn; nếu một crawler bị chặn khi truy xuất một URL, nó có thể không thấy các chỉ dẫn trên trang (như meta robots) hoặc nội dung trang cần để được lập chỉ mục. Điều đó có nghĩa robots.txt có thể ảnh hưởng gián tiếp tới việc lập chỉ mục. Nó không trực tiếp thiết lập thứ hạng — ranking phụ thuộc vào nhiều tín hiệu sau khi đã được lập chỉ mục. Dùng robots.txt để bảo vệ tài nguyên máy chủ, tránh crawl những trang trùng lặp hoặc trang công cụ nội bộ, và đảm bảo crawlers có thể truy cập các tài nguyên cần thiết cho việc render đúng.
Cách robots.txt hoạt động
Một crawler sẽ lấy /robots.txt trước khi yêu cầu các trang khác trên cùng host và áp dụng stanza User-agent khớp đầu tiên cùng các chỉ dẫn đi kèm. Các chỉ dẫn phổ biến được nhiều crawler lớn hỗ trợ gồm User-agent, Disallow, Allow và Sitemap. Hỗ trợ cho pattern matching và các chỉ dẫn bổ sung khác nhau giữa các crawler — Google nhận diện các pattern như * và $ và tôn trọng thứ tự ưu tiên Allow/Disallow theo tài liệu của họ.
Các chỉ thị điển hình và ví dụ
Ví dụ robots.txt tối thiểu:
User-agent: *
Disallow: /private/
Allow: /public/
Sitemap: https://example.com/sitemap.xml
Ghi chú: đặt robots.txt ở thư mục gốc của site. Nếu robots.txt trả về HTTP 404, hầu hết crawler coi đó là 'không có hạn chế'; nếu không thể truy xuất hoặc trả lỗi server, hành vi crawler có thể khác nhau — kiểm tra và giám sát để tránh chặn rộng ngoài ý muốn. Để biết hành vi và ví dụ riêng cho Google, tham khảo tài liệu robots.txt của Google.
Các loại robots.txt
Có những mẫu robots.txt khác nhau tùy mục tiêu. Dưới đây là các cách tiếp cận phổ biến với lợi — hại ngắn gọn.
- Chặn toàn site (Disallow: /)
Ưu điểm: ngay lập tức ngăn crawler truy cập toàn bộ host.
Nhược điểm: ngăn crawler tải nội dung và tài nguyên; có thể dừng việc lập chỉ mục các trang công khai.
- Quy tắc theo đường dẫn (Disallow: /private/)
Ưu điểm: dễ loại trừ các đường dẫn nội bộ hoặc admin.
Nhược điểm: robots.txt là công khai; không đưa vào những đường dẫn nhạy cảm mà bạn muốn giữ bí mật.
- Quy tắc theo User-agent (User-agent: Googlebot)
Ưu điểm: tuỳ chỉnh hành vi cho từng crawler cụ thể.
Nhược điểm: tăng chi phí bảo trì; một số crawler có thể bỏ qua các chỉ dẫn không chuẩn.
Bắt đầu với robots.txt
1) Xác định những gì cần bảo vệ khỏi crawling (vùng tiêu tốn tài nguyên server, đường dẫn staging) và những gì phải luôn cho crawlers truy cập (trang công khai, CSS/JS cần cho render).
2) Tạo tệp văn bản tên robots.txt ở thư mục gốc. Kiểm thử cục bộ và trên host staging trước khi triển khai production.
3) Triển khai và xác minh theo checklist kỹ thuật bên dưới. Giữ tệp đơn giản và ghi lại bất kỳ quy tắc User-agent-specific nào để người bảo trì sau hiểu ý định.
Những lỗi thường gặp với robots.txt
• Dùng robots.txt để che giấu dữ liệu nhạy cảm — robots.txt là công khai và không phải công cụ bảo mật. Hãy dùng xác thực hoặc loại bỏ tài nguyên.
• Chặn CSS/JS cần cho rendering — việc này có thể làm giảm khả năng công cụ tìm kiếm hiểu bố cục và nội dung trang.
• Chặn trang có meta noindex — nếu Googlebot bị chặn truy xuất trang, nó không thể thấy chỉ dẫn meta noindex.
• Đặt robots.txt dưới một subpath (ví dụ /blog/robots.txt) — các crawler chỉ tìm tệp ở mức gốc.
• Lỗi cú pháp và mã trạng thái HTTP sai — đảm bảo tệp được phục vụ với mã 200 phù hợp.
Xác minh robots.txt: checklist kỹ thuật
Sử dụng các kiểm tra dưới đây sau khi triển khai hoặc cập nhật robots.txt. Mỗi mục nêu nơi cần kiểm tra và điều kiện pass rõ ràng.
**Tệp khả dụng** — nơi kiểm tra: curl -I https://example.com/robots.txt — pass khi yêu cầu trả về HTTP 200 và nội dung tệp đúng như mong đợi.
**Chỉ dẫn đúng** — nơi kiểm tra: curl https://example.com/robots.txt hoặc xem nguồn trang — pass khi các dòng User-agent/Disallow/Allow khớp với chính sách của bạn.
**Không chặn tài nguyên render** — nơi kiểm tra: Chrome DevTools Network và Coverage hoặc mô phỏng crawler — pass khi CSS/JS cần cho rendering không bị disallow.
**Kiểm tra chặn Google (site của bạn)** — nơi kiểm tra: Google Search Console URL Inspection — pass khi công cụ cho biết URL có thể crawl và không bị "Blocked by robots.txt".
**Kiểm tra crawl bên ngoài** — nơi kiểm tra: dùng curl hoặc crawler bên thứ ba để request một URL bị chặn và xác nhận trang trả 200 nhưng crawler bị từ chối — pass khi hành vi khớp mong đợi.
**Sự hiện diện của Sitemap** — nơi kiểm tra: nội dung robots.txt và báo cáo Sitemaps trong Google Search Console — pass khi URL sitemap được liệt kê trong robots.txt hoặc đã gửi trong Search Console và được chấp nhận.
Công cụ và lệnh để xác minh robots.txt
curl (chỉ header): curl -I https://example.com/robots.txt — trả về trạng thái HTTP và header. curl (toàn bộ tệp): curl https://example.com/robots.txt — in nội dung để kiểm tra. Chrome DevTools: mở URL tệp hoặc xem các request mạng của trang để xác nhận các tài nguyên được phép. Google Search Console URL Inspection: với URL bạn sở hữu, công cụ báo xem Google có thấy trang và liệu nó có bị chặn bởi robots.txt hay không.Bing Webmaster Tools Site Explorer có thể hiển thị cách Bing xử lý tệp cho các site bạn xác minh. Dùng log server để xác nhận user-agents nào đã yêu cầu robots.txt và tần suất.
Để biết chi tiết chính xác về các chỉ dẫn được hỗ trợ và thứ tự ưu tiên, tham khảo tài liệu chính thức tại https://developers.google.com/search/docs/advanced/robots/intro
Các câu hỏi thường gặp
Q: Nếu tôi chặn một trang bằng robots.txt, trang đó có biến mất khỏi kết quả tìm kiếm không?
A: Chặn bằng robots.txt ngăn crawler truy xuất trang, thường khiến chúng không thấy các tín hiệu trên trang. Một trang bị chặn vẫn có thể xuất hiện trong kết quả dựa trên tín hiệu bên ngoài (chỉ nhập URL), nhưng sẽ không có bản cache hay đoạn hiển thị được render. Để yêu cầu gỡ, dùng công cụ loại bỏ index cho các URL bạn sở hữu; để kiểm soát việc lập chỉ mục qua metadata, đảm bảo trang có thể được crawl để crawler nhìn thấy meta robots:noindex.
Q: Tôi có thể dùng robots.txt để chặn các bot cụ thể không?
A: Bạn có thể thêm các stanza theo User-agent để nhắm tới các crawler đã biết. Tuy nhiên, robots.txt là hệ thống dựa trên tôn trọng: crawler tuân hành thì sẽ nghe theo, bot độc hại có thể bỏ qua. Để bảo vệ mạnh hơn, dùng xác thực, lọc IP hoặc firewall.
Q: Tôi có nên đưa sitemap vào robots.txt không?
A: Thêm Sitemap: https://example.com/sitemap.xml trong robots.txt là cách tiện để chỉ crawlers tới sitemap của bạn; đồng thời cũng nên gửi sitemap trực tiếp trong Google Search Console cho các site bạn kiểm soát.
Q: robots.txt có áp dụng theo protocol và host không?
A: Có. robots.txt được truy xuất theo host và protocol: https://example.com/robots.txt khác với http://example.com/robots.txt hoặc https://sub.example.com/robots.txt. Đặt tệp trên cùng scheme và host được site của bạn sử dụng.
Q: Làm thế nào để mobile-first indexing ảnh hưởng tới robots.txt?
A: Google dùng phiên bản di động làm cơ sở chính cho crawling và lập chỉ mục. Kể từ July 2024, Google crawl các site cho Search bằng Googlebot Smartphone theo mặc định. Đảm bảo robots.txt không vô tình chặn các tài nguyên trên trang phục vụ di động mà cần thiết cho việc render và lập chỉ mục đúng.
Q: Tôi có thể tìm hướng dẫn chính thức ở đâu?
A: Tham khảo tài liệu robots.txt của Google tại https://developers.google.com/search/docs/advanced/robots/intro và các nguồn của Schema.org và W3C cho các thực hành liên quan tới crawling và lập chỉ mục.
Thuật ngữ liên quan

Crawler: là gì và vì sao quan trọng với SEO
Crawler là một bot tự động thu thập trang web, theo dõi liên kết và tài nguyên để phát hiện nội dung cho các công cụ tìm kiếm; các trang được crawl sẽ là ứng viên để đưa vào chỉ mục (Google sử dụng Googlebot Smartphone làm mặc định kể từ July 2024).

Công cụ tìm kiếm: cách chúng hoạt động và những kiến thức cơ bản về SEO
Công cụ tìm kiếm là hệ thống phần mềm phát hiện, thu thập (crawl), lập chỉ mục và truy xuất nội dung web để trả lời truy vấn người dùng; các SERPs hiện đại còn hiển thị AI Overviews, rich results và các danh sách được xếp hạng dựa trên nhiều tín hiệu.

Thuật toán tìm kiếm: định nghĩa, cách hoạt động & tác động đến SEO
Thuật toán tìm kiếm là tập hợp quy tắc phần mềm mà các công cụ tìm kiếm dùng để khám phá, crawl, lập chỉ mục và xếp hạng trang web cho các truy vấn bằng cách kết hợp các tín hiệu liên quan, chất lượng nội dung, tín hiệu liên kết và mô hình ý định khai thác AI để sắp xếp kết quả.

Xếp hạng trên công cụ tìm kiếm: định nghĩa và cách hoạt động
Xếp hạng trên công cụ tìm kiếm là thứ tự mà các công cụ tìm kiếm trình bày các trang đã được lập chỉ mục cho một truy vấn cụ thể; vị trí phản ánh nhiều tín hiệu—tính phù hợp, backlinks, chất lượng nội dung, trải nghiệm trang và ý định người dùng—và tương tác với các tổng quan do AI tạo vào 2026.

Thẻ meta: loại, công dụng và thực hành tốt nhất cho SEO
Thẻ meta là các phần tử HTML cung cấp metadata về một trang (tiêu đề, mô tả, chỉ thị robots, thẻ xem trước mạng xã hội và các thẻ khác). Các công cụ tìm kiếm và nền tảng đọc chúng để ảnh hưởng đến việc lập chỉ mục, đoạn trích trên SERP và cách trình bày.

On-page SEO: định nghĩa, danh sách kiểm tra và xác minh
On-page SEO là tối ưu nội dung trang, HTML và UX để trang có tính liên quan, có thể được index và hữu ích cho người dùng lẫn các công cụ tìm kiếm hiện đại — bao gồm mobile-first rendering, structured data, canonicals và hiệu suất trang.
