Block URLs with robots.txt

Tạo tệp robots.txt

Nếu sử dụng dịch vụ lưu trữ trang web, chẳng hạn như Wix hoặc Blogger, bạn có thể không cần phải tạo hoặc chỉnh sửa tệp robots.txt .

Bắt đầu

Tệp robots.txt nằm ở thư mục gốc của trang web của bạn. Vì vậy, đối với trang web www.example.com, tệp robots.txt nằm tại www.example.com/robots.txt. robots.txt là một tệp văn bản thuần túy tuân theo Tiêu chuẩn loại trừ robot. Tệp robots.txt bao gồm một hoặc nhiều quy tắc. Mỗi quy tắc chặn (hoặc cho phép) một trình thu thập dữ liệu nhất định truy cập vào một đường dẫn tệp được chỉ định trong trang web đó.

Dưới đây là một tệp robots.txt đơn giản với hai quy tắc kèm theo phần giải thích:

# Rule 1
User-agent: Googlebot
Disallow: /nogooglebot/

# Rule 2
User-agent: *
Allow: /

Sitemap: http://www.example.com/sitemap.xml

 

Giải thích:

  1. Tác nhân người dùng có tên "Googlebot" không được thu thập dữ liệu thư mục http://example.com/nogooglebot/ hoặc bất kỳ thư mục con nào.
  2. Tất cả tác nhân người dùng khác có thể truy cập toàn bộ trang web. (Quy tắc này có thể được bỏ qua và kết quả vẫn sẽ giống nhau, vì quyền truy cập đầy đủ là mặc định.)
  3. Tệp Sơ đồ trang web của trang nằm tại http://www.example.com/sitemap.xml

Chúng tôi sẽ cung cấp một ví dụ chi tiết hơn ở phần sau.

Nguyên tắc cơ bản về tệp robots.txt

Dưới đây là một số nguyên tắc cơ bản về tệp robots.txt. Bạn nên đọc cú pháp đầy đủ của tệp robots.txt vì cú pháp robots.txt có một số hành vi tinh vi mà bạn nên hiểu rõ.

Định dạng và vị trí

Bạn có thể sử dụng hầu hết trình soạn thảo văn bản để tạo tệp robots.txt. Trình soạn thảo văn bản sẽ có thể tạo các tệp văn bản UTF-8 hoặc ASCII tiêu chuẩn. Bạn không nên sử dụng trình xử lý văn bản vì trình xử lý văn bản thường lưu tệp dưới định dạng độc quyền và có thể thêm ký tự không mong muốn, chẳng hạn như dấu ngoặc móc và điều này có thể gây sự cố cho trình thu thập dữ liệu.

Sử dụng công cụ Trình kiểm tra robots.txt để viết hoặc chỉnh sửa tệp robots.txt cho trang web của bạn. Công cụ này cho phép bạn kiểm tra cú pháp và hành vi của tệp trên trang web của mình.

Quy tắc về định dạng và vị trí:

  • Phải đặt tên tệp là robots.txt
  • Trang web của bạn chỉ có thể có một tệp robots.txt.
  • Tệp robots.txt phải được đặt ở thư mục gốc của máy chủ trang web tương ứng. Ví dụ: để kiểm soát quá trình thu thập dữ liệu trên tất cả các URL tại http://www.example.com/, tệp robots.txt phải nằm ở http://www.example.com/robots.txt. Không được đặt tệp trong thư mục con (ví dụ như http://example.com/pages/robots.txt). Nếu bạn không chắc chắn về cách truy cập thư mục gốc của trang web hoặc cần quyền để làm điều đó, hãy liên hệ với nhà cung cấp dịch vụ lưu trữ web. Nếu bạn không thể truy cập thư mục gốc của trang web, hãy sử dụng một phương thức chặn khác như thẻ meta.
  • Một tệp robots.txt có thể áp dụng với các miền phụ (ví dụ: http://website.example.com/robots.txt) hoặc trên các cổng không chuẩn (ví dụ: http://example.com:8181/robots.txt).
  • Nhận xét nằm tại bất kỳ dòng nào 

Cú pháp

  • robots.txt phải là tệp văn bản ASCII hoặc UTF-8. Không cho phép ký tự nào khác.
  • Tệp robots.txt bao gồm một hoặc nhiều quy tắc.
  • Mỗi quy tắc bao gồm nhiều chỉ thị (hướng dẫn), một chỉ thị trên mỗi dòng.
  • Quy tắc cung cấp thông tin sau:
    • Đối tượng mà quy tắc áp dụng (tác nhân người dùng)
    • Những thư mục hoặc tệp mà tác nhân có thể truy cập và/hoặc
    • Những thư mục hoặc tệp mà tác nhân không thể truy cập.
  • Các quy tắc được xử lý từ trên xuống dưới và một tác nhân người dùng chỉ được khớp với một tập hợp quy tắc, chính là quy tắc đầu tiên, cụ thể nhất khớp với một tác nhân người dùng nhất định.
  • Giả định mặc định là tác nhân người dùng có thể thu thập dữ liệu một trang hay thư mục không bị chặn bởi quy tắc Disallow: (Không cho phép).
  • Các quy tắc phân biệt chữ hoa chữ thường. Ví dụ: Disallow: /file.asp áp dụng với http://www.example.com/file.asp nhưng không áp dụng với http://www.example.com/File.asp.

Bạn có thể sử dụng các chỉ thị sau đây trong tệp robots.txt:

  • User-agent: (Tác nhân người dùng) [Bắt buộc, một hoặc nhiều tác nhân người dùng mỗi quy tắc] Tên của robot công cụ tìm kiếm (trình thu thập dữ liệu web) được áp dụng quy tắc. Đây là dòng đầu tiên của bất kỳ quy tắc nào. Phần lớn tác nhân người dùng được liệt kê trong Cơ sở dữ liệu robot trên web hoặc trong Danh sách tác nhân người dùng của Google. Hỗ trợ ký tự đại diện * cho một tiền tố, hậu tố hoặc toàn bộ chuỗi đường dẫn. Việc sử dụng dấu hoa thị (*) như trong ví dụ dưới đây sẽ khớp với tất cả các trình thu thập dữ liệu ngoại trừ các trình thu thập dữ liệu AdsBot khác nhau. Cần phải đặt tên cho các trình này rõ ràng. (Xem danh sách tên trình thu thập dữ liệu của Google.) Ví dụ:
    # Example 1: Block only Googlebot
    User-agent: Googlebot
    Disallow: /
    
    # Example 2: Block Googlebot and Adsbot
    User-agent: Googlebot
    User-agent: AdsBot-Google
    Disallow: /
     
    # Example 3: Block all but AdsBot crawlers
    User-agent: * 
    Disallow: /
  • Disallow: (Không cho phép) [Ít nhất một hoặc nhiều mục Disallow hoặc Allow (Cho phép) mỗi quy tắc] Thư mục hoặc trang tương ứng với tên miền gốc mà tác nhân người dùng không được thu thập dữ liệu. Trong trường hợp một trang, phải có tên trang đầy đủ như được hiển thị trong trình duyệt. Còn nếu là một thư mục, thư mục phải kết thúc bằng /.  Hỗ trợ ký tự đại diện * cho một tiền tố, hậu tố hoặc toàn bộ chuỗi đường dẫn.
  • Allow: (Cho phép) [Ít nhất một hoặc nhiều mục Disallow hoặc Allow mỗi quy tắc] Thư mục hoặc trang tương ứng với tên miền gốc mà tác nhân người dùng được đề cập nên thu thập dữ liệu. Quy tắc này dùng để ghi đè Disallow nhằm cho phép thu thập dữ liệu một trang hoặc thư mục con trong một thư mục không được phép. Trong trường hợp một trang, phải có tên trang đầy đủ như được hiển thị trong trình duyệt. Còn nếu là một thư mục, thư mục phải kết thúc bằng /. Hỗ trợ ký tự đại diện * cho một tiền tố, hậu tố hoặc toàn bộ chuỗi đường dẫn.
  • Sitemap: (Sơ đồ trang web) [Tùy chọn, có hoặc không có sơ đồ trang web trong mỗi tệp] Vị trí của sơ đồ trang web cho trang web này. Phải là URL đủ điều kiện; Google không giả định hoặc kiểm tra các phiên bản thay thế http/https/ www/không phải www. Sơ đồ trang web là cách hữu ích để cho biết nội dung mà Google nên thu thập dữ liệu, chứ không phải nội dung mà Google có thể hoặc không thể thu thập dữ liệu. Tìm hiểu thêm về sơ đồ trang web. Ví dụ:
    Sitemap: https://example.com/sitemap.xml
    Sitemap: http://www.example.com/sitemap.xml

Từ khóa không xác định sẽ bị bỏ qua.

Một tệp ví dụ khác

Tệp robots.txt bao gồm một hoặc nhiều khối quy tắc, trong đó mỗi khối bắt đầu bằng dòng User-agent chỉ rõ mục tiêu của các quy tắc. Đây là một tệp có hai quy tắc. Nhận xét trong từng dòng sẽ giải thích từng quy tắc:

# Block googlebot from example.com/directory1/... and example.com/directory2/...
# but allow access to directory2/subdirectory1/...
# All other directories on the site are allowed by default.
User-agent: googlebot
Disallow: /directory1/
Disallow: /directory2/
Allow: /directory2/subdirectory1/

# Block the entire site from anothercrawler.
User-agent: anothercrawler
Disallow: /

Cú pháp đầy đủ của robots.txt

Bạn có thể xem cú pháp robots.txt đầy đủ ở đây. Vui lòng đọc toàn bộ tài liệu vì cú pháp robots.txt có một số phần khó hiểu rất cần nắm rõ.

Các quy tắc robots.txt hữu ích

Dưới đây là một số quy tắc robots.txt phổ biến và hữu ích:

Quy tắc Mẫu
Không cho phép thu thập dữ liệu toàn bộ trang web. Xin lưu ý rằng trong một số trường hợp, các URL từ trang web vẫn có thể được lập chỉ mục ngay cả khi chưa được thu thập dữ liệu. Lưu ý: quy tắc này không phù hợp với các trình thu thập dữ liệu AdsBot khác nhau. Các trình này phải được đặt tên rõ ràng.
User-agent: *
Disallow: /
Không cho phép thu thập dữ liệu một thư mục và nội dung thư mục bằng cách đặt dấu gạch chéo lên sau tên thư mục. Hãy nhớ rằng bạn không nên sử dụng robots.txt để chặn truy cập vào nội dung riêng tư: thay vào đó hãy sử dụng phương thức xác thực phù hợp. Các URL không được tệp robots.txt cho phép có thể vẫn được lập chỉ mục mà không cần thu thập dữ liệu. Bất kỳ người nào cũng có thể xem tệp robots.txt và điều này có thể làm lộ vị trí của nội dung riêng tư của bạn.
User-agent: *
Disallow: /calendar/
Disallow: /junk/
Cho phép truy cập vào một trình thu thập dữ liệu
User-agent: Googlebot-news
Allow: /

User-agent: *
Disallow: /
Cho phép truy cập vào tất cả ngoại trừ một trình thu thập dữ liệu
User-agent: Unnecessarybot
Disallow: /

User-agent: *
Allow: /

Không cho phép thu thập dữ liệu một trang web bằng cách đưa trang vào sau dấu gạch chéo:

Disallow: /private_file.html

Chặn một hình ảnh cụ thể từ Google Images:

User-agent: Googlebot-Image
Disallow: /images/dogs.jpg

Chặn tất cả hình ảnh trên trang web của bạn từ Google Images:

User-agent: Googlebot-Image
Disallow: /

Không cho phép thu thập dữ liệu các tệp thuộc một loại cụ thể (ví dụ: .gif):

User-agent: Googlebot
Disallow: /*.gif$

Không cho phép thu thập dữ liệu toàn bộ trang web, nhưng hiển thị quảng cáo AdSense trên các trang đó không cho phép tất cả các trình thu thập dữ liệu web ngoài Mediapartners-Google. Triển khai này ẩn các trang của bạn từ kết quả tìm kiếm, nhưng trình thu thập dữ liệu web Mediapartners-Google vẫn có thể phân tích trang để quyết định hiển thị quảng cáo nào cho khách truy cập vào trang web của bạn.

User-agent: *
Disallow: /

User-agent: Mediapartners-Google
Allow: /
Khớp với URL kết thúc bằng một chuỗi cụ thể, sử dụng $. Ví dụ: mã mẫu chặn bất kỳ URL nào kết thúc bằng .xls:
User-agent: Googlebot
Disallow: /*.xls$
Bài viết này có hữu ích không?
Chúng tôi có thể cải thiện trang này bằng cách nào?