SEO Tools

Robots.txt File Generator — Tìm Hiểu và Cách Tạo File Robots.txt

Tìm hiểu file robots.txt có tác dụng gì, cách thức hoạt động của các quy tắc thu thập dữ liệu, và cách tạo robots.txt chuẩn xác cho website mà không cần viết code.

8 phút đọc

Robots.txt file generator — web crawlers và SEO

Mọi website trên internet đều được các bot ghé thăm — Googlebot, Bingbot, AI crawlers và hàng chục bot khác. File robots.txt là cách bạn cho chúng biết chúng được phép và không được phép lập chỉ mục gì. Làm đúng, bạn kiểm soát được những gì xuất hiện trong kết quả tìm kiếm. Làm sai, bạn có thể vô tình chặn toàn bộ website của mình khỏi Google.

File robots.txt là gì?

File robots.txt là một file văn bản thuần túy được đặt tại thư mục gốc của website, có nhiệm vụ hướng dẫn các web crawler nên thu thập dữ liệu trang nào hay phần nào, và bỏ qua phần nào. File này tuân theo Robots Exclusion Protocol — một tiêu chuẩn không chính thức được hầu hết các crawler lớn tuân thủ.

Khi Googlebot truy cập website của bạn, URL đầu tiên nó yêu cầu là:

https://yourdomain.com/robots.txt

Nếu file tồn tại, bot sẽ đọc các quy tắc và điều chỉnh việc thu thập dữ liệu theo đó. Nếu file không tồn tại, bot sẽ mặc định cho rằng mọi thứ đều được phép thu thập.

Lưu ý quan trọng: robots.txt là một chỉ thị, không phải biện pháp bảo mật. Nó chỉ nói với các bot có tâm những gì không nên thu thập — chứ không ngăn chặn việc truy cập. Các bot độc hại và scraper có thể hoàn toàn bỏ qua nó. Đừng bao giờ dựa vào robots.txt để ẩn nội dung nhạy cảm.


Cấu trúc file robots.txt

Một file robots.txt được cấu thành từ một hoặc nhiều bản ghi (record). Mỗi bản ghi bao gồm:

  1. Một dòng User-agent — bot nào sẽ áp dụng các quy tắc này
  2. Một hoặc nhiều dòng Disallow hoặc Allow — các quy tắc thu thập dữ liệu
  3. Một chỉ thị Crawl-delay tùy chọn
  4. Một chỉ thị Sitemap tùy chọn (ở cấp độ file)
User-agent: Googlebot
Disallow: /admin/
Allow: /admin/public/

User-agent: *
Disallow: /private/
Crawl-delay: 10

Sitemap: https://yourdomain.com/sitemap.xml

Giải thích các chỉ thị chính

Chỉ thị Tác dụng
User-agent Chỉ định crawler nào sẽ áp dụng các quy tắc bên dưới. * nghĩa là tất cả các bot.
Disallow Chặn đường dẫn được chỉ định không cho thu thập dữ liệu.
Allow Cho phép rõ ràng một đường dẫn, kể cả khi nằm trong thư mục cha bị chặn.
Crawl-delay Yêu cầu bot chờ N giây giữa các lần yêu cầu (Google không hỗ trợ).
Sitemap Trỏ các crawler đến XML sitemap của bạn.

Giá trị User-agent — bạn đang nói chuyện với ai?

Mỗi crawler có một chuỗi user-agent riêng biệt. Những cái quan trọng nhất:

User-agent Crawler Công cụ tìm kiếm
* Tất cả crawler
Googlebot Crawler web của Google Google Search
Googlebot-Image Crawler ảnh của Google Google Images
Googlebot-Video Crawler video của Google Google Video
Bingbot Crawler của Microsoft Bing Bing Search
Slurp Crawler của Yahoo! Yahoo Search
DuckDuckBot Crawler của DuckDuckGo DuckDuckGo
Baiduspider Crawler của Baidu Baidu Search
YandexBot Crawler của Yandex Yandex Search
GPTBot Crawler huấn luyện của OpenAI ChatGPT
ClaudeBot Crawler huấn luyện của Anthropic Claude
CCBot Bot của Common Crawl Nhiều bộ dữ liệu AI

Các quy tắc được áp dụng theo từng user-agent. Nếu một bot khớp với bản ghi user-agent cụ thể, các quy tắc đó sẽ được áp dụng. Nếu không có bản ghi cụ thể nào, các quy tắc * (wildcard) sẽ được áp dụng.


Disallow và Allow — cách khớp đường dẫn hoạt động

Disallow

Disallow: /path/ chặn đường dẫn đó và tất cả mọi thứ bên dưới nó.

Disallow: /admin/       # chặn /admin/, /admin/users, /admin/login, v.v.
Disallow: /private.html # chặn chính xác file đó
Disallow: /             # chặn toàn bộ website
Disallow:               # giá trị rỗng = cho phép tất cả (không hạn chế)

Allow

Allow ghi đè Disallow cho một đường dẫn cụ thể hơn. Quy tắc cụ thể hơn sẽ được ưu tiên.

User-agent: Googlebot
Disallow: /products/
Allow: /products/featured/   # Googlebot CÓ THỂ thu thập /products/featured/ dù có Disallow ở trên

Ký tự đại diện (Wildcards)

Hầu hết các crawler (bao gồm cả Google) hỗ trợ hai ký tự đại diện:

Mẫu Ý nghĩa Ví dụ
* Khớp với bất kỳ chuỗi ký tự nào Disallow: /*.pdf$
$ Khớp với cuối URL Disallow: /*.pdf$ — chặn các URL kết thúc bằng .pdf
Disallow: /*?           # chặn tất cả URL có query string
Disallow: /*.pdf$       # chặn tất cả file PDF
Disallow: /tag/*/page/  # chặn các trang phân trang trong tag archive

Các mẫu robots.txt phổ biến

Cho phép tất cả (hành vi mặc định)

User-agent: *
Disallow:

Disallow rỗng nghĩa là không có hạn chế. Điều này tương đương với việc không có file robots.txt — nhưng nên có file để sau này có thể thêm quy tắc.

Chặn toàn bộ website (ví dụ: môi trường staging)

User-agent: *
Disallow: /

Dùng cái này trên môi trường development, staging hoặc preview để ngăn chúng bị lập chỉ mục.

Chặn các thư mục cụ thể

User-agent: *
Disallow: /admin/
Disallow: /wp-admin/
Disallow: /wp-login.php
Disallow: /checkout/
Disallow: /cart/
Disallow: /account/

Chặn các crawler huấn luyện AI

User-agent: GPTBot
Disallow: /

User-agent: ClaudeBot
Disallow: /

User-agent: CCBot
Disallow: /

User-agent: Google-Extended
Disallow: /

Website thương mại điện tử — chặn các trang không cần lập chỉ mục

User-agent: *
Disallow: /cart/
Disallow: /checkout/
Disallow: /account/
Disallow: /wishlist/
Disallow: /*?sort=
Disallow: /*?filter=
Disallow: /*?ref=
Allow: /products/
Allow: /collections/

Sitemap: https://yourdomain.com/sitemap.xml

Website WordPress

User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php
Disallow: /wp-login.php
Disallow: /wp-includes/
Disallow: /?s=
Disallow: /search/
Disallow: /trackback/

Sitemap: https://yourdomain.com/sitemap.xml

Cách tạo file robots.txt mà không cần viết code

Viết robots.txt bằng tay dễ gây lỗi — chỉ một lỗi đánh máy nhỏ có thể chặn những trang bạn muốn cho phép. Robots.txt Generator của chúng tôi cho phép bạn:

  1. Chọn các bot muốn nhắm đến
  2. Thêm quy tắc allow và disallow qua biểu mẫu đơn giản
  3. Đặt crawl delay nếu cần
  4. Thêm URL sitemap của bạn
  5. Sao chép hoặc tải xuống file hoàn chỉnh ngay lập tức

Sau khi tạo, hãy dùng Robots.txt Tester để xác minh các quy tắc hoạt động đúng như mong muốn trước khi triển khai.


Nơi đặt file robots.txt

File phải nằm ở thư mục gốc của domain:

https://yourdomain.com/robots.txt    ✓ đúng
https://yourdomain.com/robots/robots.txt    ✗ sai
https://subdomain.yourdomain.com/robots.txt    ✓ đúng (cho subdomain)

Mỗi subdomain cần có robots.txt riêng. File tại www.yourdomain.com/robots.txt không áp dụng cho blog.yourdomain.com.

Triển khai robots.txt

Website tĩnh (HTML): Tải robots.txt lên thư mục public gốc của web server (/public_html/, /dist/, /public/, v.v.).

WordPress: Đặt file ở thư mục gốc của cài đặt WordPress. Nhiều plugin SEO (Yoast, RankMath) quản lý tự động thông qua bảng quản trị.

Next.js: Đặt robots.txt trong thư mục /public, hoặc dùng file robots.js trong /app để tạo theo cách lập trình (Next.js 13+).

Vercel / Netlify: Đặt trong /public — file sẽ được phục vụ từ thư mục gốc tự động khi triển khai.


robots.txt và SEO — những điều cần làm đúng

Không chặn CSS và JavaScript

Một thói quen cũ phổ biến là chặn /wp-content/ hoặc /assets/ để tiết kiệm crawl budget. Điều này phản tác dụng: Google cần render trang của bạn để hiểu nội dung, và việc chặn CSS/JS sẽ cản trở điều đó. Chỉ chặn những gì bạn thực sự không muốn lập chỉ mục.

robots.txt không ngăn lập chỉ mục — noindex mới làm được

Disallow ngăn Google thu thập dữ liệu một URL. Nó không ngăn Google lập chỉ mục URL đó nếu có website khác liên kết đến. Để ngăn lập chỉ mục, hãy dùng thẻ meta noindex hoặc HTTP header X-Robots-Tag trực tiếp trên trang.

Khai báo Sitemap

Luôn đưa URL sitemap vào robots.txt — đây là cách đáng tin cậy nhất để đảm bảo các crawler tìm thấy nó:

Sitemap: https://yourdomain.com/sitemap.xml
Sitemap: https://yourdomain.com/sitemap-images.xml

Bạn có thể liệt kê nhiều sitemap.

Crawl budget

Các website lớn (hàng nghìn trang) được hưởng lợi nhiều nhất từ việc tối ưu robots.txt. Chặn các trang ít giá trị (URL với filter, kết quả tìm kiếm nội bộ, nội dung trùng lặp mỏng) giúp Google dành crawl budget cho những trang thực sự quan trọng.


Kiểm tra file robots.txt của bạn

Sau khi tạo file, hãy xác minh trước khi triển khai:

  1. Robots.txt Tester — dán file của bạn và kiểm tra các URL cụ thể để xác nhận hành vi allow/disallow
  2. Google Search Console — báo cáo Crawl Stats cho thấy Google đang thu thập dữ liệu website của bạn như thế nào; công cụ URL Inspection cho biết các trang cụ thể có bị chặn không
  3. Kiểm tra thủ công — truy cập https://yourdomain.com/robots.txt sau khi triển khai để xác nhận file đang hoạt động và được phục vụ đúng cách

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

Google có luôn tuân theo robots.txt không? Google tôn trọng các chỉ thị Disallow khi thu thập dữ liệu. Tuy nhiên, Google vẫn có thể lập chỉ mục một URL bị disallow nếu tìm thấy liên kết đến nó — Disallow chặn việc thu thập, không chặn mục chỉ mục. Dùng noindex trực tiếp trên trang để ngăn lập chỉ mục.

Tôi có thể có nhiều khối User-agent cho cùng một bot không? Không. Mỗi user-agent chỉ nên xuất hiện trong một khối duy nhất. Nếu bạn có các quy tắc xung đột cho cùng một bot trong nhiều khối, hành vi sẽ không xác định. Hãy gộp tất cả quy tắc cho một user-agent vào một bản ghi duy nhất.

Điều gì xảy ra nếu robots.txt của tôi có lỗi cú pháp? Hầu hết các crawler sẽ bỏ qua quy tắc bị lỗi hoặc dừng phân tích tại điểm lỗi. Google thường tiếp tục với các quy tắc đã phân tích thành công trước khi gặp lỗi. Hãy kiểm tra file trước khi triển khai.

Tôi có nên chặn Googlebot-Image không? Chỉ khi bạn thực sự không muốn hình ảnh của mình xuất hiện trong kết quả Google Images. Nếu bạn bán ảnh hoặc vận hành website nhiều hình ảnh, việc chặn Googlebot-Image có thể làm giảm lưu lượng truy cập đáng kể.

Các crawler đọc lại robots.txt bao lâu một lần? Google thường cache robots.txt trong tối đa 24 giờ. Sau khi bạn cập nhật file, các thay đổi có thể mất đến một ngày để được phản ánh trong hành vi thu thập dữ liệu của Google.

robots.txt có ảnh hưởng đến tốc độ trang hay Core Web Vitals không? Không. robots.txt chỉ ảnh hưởng đến hành vi thu thập dữ liệu, không ảnh hưởng đến cách trang tải hay hiệu suất đối với người dùng thực.


Kích thước và giới hạn file robots.txt

  • Google hỗ trợ file robots.txt có kích thước tối đa 500 KB
  • File lớn hơn 500 KB sẽ bị cắt bớt — các quy tắc vượt quá kích thước đó sẽ bị bỏ qua
  • Không có giới hạn chính thức về số lượng quy tắc, nhưng hãy giữ file có tổ chức và ngắn gọn
  • Khuyến nghị dùng mã hóa UTF-8; ASCII cũng hoạt động được

Công cụ liên quan