Robots.txt là một tệp văn bản mà quản trị viên web tạo ra để hướng dẫn các rô bốt web (thường là rô bốt công cụ tìm kiếm) cách thu thập dữ liệu các trang trên trang web của họ. Tệp robots.txt là một phần của giao thức loại trừ rô bốt (REP), một nhóm tiêu chuẩn web quy định cách rô bốt thu thập dữ liệu web, truy cập và lập chỉ mục nội dung cũng như phân phát nội dung đó cho người dùng. REP cũng bao gồm các chỉ thị như meta rô bốt , cũng như các hướng dẫn trên toàn trang, thư mục con hoặc toàn trang về cách các công cụ tìm kiếm xử lý các liên kết (chẳng hạn như “theo dõi” hoặc “nofollow”).

Trên thực tế, các tệp robots.txt cho biết liệu một số tác nhân người dùng (phần mềm thu thập thông tin web) có thể hoặc không thể thu thập thông tin các phần của trang web hay không. Các hướng dẫn thu thập thông tin này được chỉ định bằng cách “không cho phép” hoặc “cho phép” hành vi của một số tác nhân người dùng (hoặc tất cả).

URL của tệp Robots.txt: www.example.com/robots.txt
Chặn tất cả các trình thu thập dữ liệu web khỏi tất cả nội dung
Tác nhân người dùng: * Không cho phép: /

Việc sử dụng cú pháp này trong tệp robots.txt sẽ yêu cầu tất cả trình thu thập thông tin web không thu thập thông tin bất kỳ trang nào trên www.example.com , bao gồm cả trang chủ.

Cho phép tất cả các trình thu thập thông tin web truy cập vào tất cả nội dung
Tác nhân người dùng: * Không cho phép: 

Việc sử dụng cú pháp này trong tệp robots.txt sẽ yêu cầu trình thu thập thông tin web thu thập thông tin tất cả các trang trên  www.example.com , bao gồm cả trang chủ.

Chặn một trình thu thập thông tin web cụ thể khỏi một thư mục cụ thể
Tác nhân người dùng: Googlebot Disallow: / example-subfolder /

Cú pháp này chỉ cho trình thu thập thông tin của Google (tên tác nhân người dùng Googlebot) không thu thập thông tin bất kỳ trang nào có chứa chuỗi URL www.example.com/example-subfolder/ .

 

Chặn một trình thu thập thông tin web cụ thể khỏi một trang web cụ thể

 

Tác nhân người dùng: Bingbot Disallow: /example-subfolder/blocked-page.html

Cú pháp này chỉ cho trình thu thập thông tin của Bing (tên tác nhân người dùng Bing) tránh thu thập thông tin trang cụ thể tại www.example.com/example-subfolder/blocked-page.html. 

Công cụ tìm kiếm có hai công việc chính:

  1. Thu thập thông tin trên web để khám phá nội dung;
  2. Lập chỉ mục nội dung đó để nó có thể được cung cấp cho những người tìm kiếm đang tìm kiếm thông tin.

Để thu thập dữ liệu các trang web, các công cụ tìm kiếm đi theo các liên kết để đi từ trang này sang trang khác – cuối cùng là thu thập thông tin qua hàng tỷ liên kết và trang web. Hành vi thu thập thông tin này đôi khi được gọi là “thêu thùa”.

Sau khi đến một trang web nhưng trước khi xem xét nó, trình thu thập thông tin tìm kiếm sẽ tìm kiếm tệp robots.txt. Nếu nó tìm thấy một tệp, trình thu thập thông tin sẽ đọc tệp đó trước khi tiếp tục qua trang. Bởi vì tệp robots.txt chứa thông tin về cách công cụ tìm kiếm thu thập thông tin, thông tin tìm thấy ở đó sẽ hướng dẫn hành động tiếp theo của trình thu thập thông tin trên trang web cụ thể này. Nếu tệp robots.txt không chứa bất kỳ lệnh nào không cho phép hoạt động của tác nhân người dùng (hoặc nếu trang web không có tệp robots.txt), nó sẽ tiến hành thu thập thông tin khác trên trang web.

Cú pháp robots.txt có thể được coi là “ngôn ngữ” của tệp robots.txt. Có năm thuật ngữ phổ biến mà bạn có thể gặp trong tệp rô bốt. Chúng bao gồm:

  • Tác nhân người dùng: Trình thu thập thông tin web cụ thể mà bạn đang cung cấp hướng dẫn thu thập thông tin (thường là công cụ tìm kiếm). Danh sách của hầu hết các tác nhân người dùng có thể được tìm thấy ở đây.

  • Không cho phép: Lệnh được sử dụng để yêu cầu tác nhân người dùng không thu thập dữ liệu URL cụ thể. Chỉ cho phép một dòng “Không cho phép:” cho mỗi URL.

  • Cho phép (Chỉ áp dụng cho Googlebot): Lệnh cho Googlebot biết nó có thể truy cập một trang hoặc thư mục con mặc dù trang mẹ hoặc thư mục con của nó có thể không được phép.

  • Độ trễ thu thập thông tin: Trình thu thập thông tin phải đợi bao nhiêu giây trước khi tải và thu thập thông tin nội dung trang. Lưu ý rằng Googlebot không thừa nhận lệnh này, nhưng tốc độ thu thập dữ liệu có thể được đặt trong Google Search Console .

  • Sơ đồ trang web: Được sử dụng để gọi ra vị trí của bất kỳ (các) sơ đồ trang web XML nào được liên kết với URL này. Lưu ý rằng lệnh này chỉ được hỗ trợ bởi Google, Ask, Bing và Yahoo.

Tệp Robots.txt kiểm soát quyền truy cập của trình thu thập thông tin vào các khu vực nhất định trên trang web của bạn. Mặc dù điều này có thể rất nguy hiểm nếu bạn vô tình không cho phép Googlebot thu thập dữ liệu toàn bộ trang web của mình (!!), nhưng có một số trường hợp mà tệp robots.txt có thể rất hữu ích.

Một số trường hợp sử dụng phổ biến bao gồm:

  • Ngăn nội dung trùng lặp xuất hiện trong SERP (lưu ý rằng meta rô bốt thường là lựa chọn tốt hơn cho việc này)
  • Giữ toàn bộ các phần của trang web ở chế độ riêng tư (ví dụ: trang web dàn dựng của nhóm kỹ sư của bạn)
  • Giữ cho các trang kết quả tìm kiếm nội bộ không hiển thị trên SERP công khai
  • Chỉ định vị trí của (các) sơ đồ trang web
  • Ngăn các công cụ tìm kiếm lập chỉ mục các tệp nhất định trên trang web của bạn (hình ảnh, PDF, v.v.)
  • Chỉ định độ trễ thu thập thông tin để ngăn máy chủ của bạn bị quá tải khi trình thu thập thông tin tải nhiều phần nội dung cùng một lúc

Nếu không có khu vực nào trên trang web của bạn mà bạn muốn kiểm soát quyền truy cập của tác nhân người dùng, bạn có thể không cần tệp robots.txt.