fbpx
19th Ave New York, NY 95822, USA

Bản đặc tả về thẻ meta robots, thuộc tính data-nosnippet và X-Robots-Tag

Tài liệu này cho biết chi tiết cách sử dụng các chế độ cài đặt cấp trang và cấp văn bản để điều chỉnh cách Google trình bày nội dung của bạn trong kết quả tìm kiếm. Bạn có thể chỉ định các chế độ cài đặt cấp trang bằng cách thêm thẻ meta vào các trang HTML hoặc tiêu đề HTTP. Bạn có thể chỉ định các chế độ cài đặt cấp văn bản bằng thuộc tính data-nosnippet trên các phần tử HTML trong một trang.

Thẻ meta robots cho phép bạn sử dụng phương pháp chi tiết, cụ thể theo từng trang để kiểm soát cách Google lập chỉ mục và phân phát từng trang riêng lẻ cho người dùng trong kết quả của Google Tìm kiếm. Hãy đặt thẻ meta robots vào phần <head> của một trang nhất định, như trong ví dụ sau:

[external_link_head]

 <!DOCTYPE html> <html><head> <meta name="robots" content="noindex" /> (…) </head> <body>(…)</body> </html>

Trong ví dụ trên, thẻ meta robots hướng dẫn các công cụ tìm kiếm không hiển thị trang trong kết quả tìm kiếm. Giá trị của thuộc tính name (robots) chỉ định rằng lệnh này áp dụng cho mọi trình thu thập dữ liệu. Để chỉ dẫn cho một trình thu thập dữ liệu cụ thể, hãy thay thế giá trị robots của thuộc tính name bằng tên của trình thu thập dữ liệu mà bạn muốn chỉ dẫn. Các trình thu thập dữ liệu cụ thể còn được gọi là các tác nhân người dùng (mỗi trình thu thập dữ liệu sử dụng một tác nhân người dùng của riêng mình để yêu cầu một trang). Trình thu thập dữ liệu web tiêu chuẩn của Google có tác nhân người dùng tên là Googlebot. Để ngăn riêng mình Googlebot lập chỉ mục trang của bạn, hãy cập nhật thẻ như sau:

 <meta name="googlebot" content="noindex" />

Giờ đây, thẻ này chỉ dẫn riêng cho Google là không hiển thị trang này trong kết quả tìm kiếm. Cả hai thuộc tính namecontent đều không phân biệt chữ hoa chữ thường.

Các công cụ tìm kiếm có thể dùng các trình thu thập dữ liệu khác nhau cho các mục đích khác nhau. Hãy xem danh sách toàn bộ các trình thu thập dữ liệu của Google. Ví dụ: để hiển thị một trang trong kết quả tìm kiếm trên web của Google nhưng không hiển thị trang đó trong Google Tin tức, hãy sử dụng thẻ meta sau:

 <meta name="googlebot-news" content="noindex" />

Để chỉ định riêng nhiều trình thu thập dữ liệu, hãy sử dụng nhiều thẻ meta robots:

 <meta name="googlebot" content="noindex"> <meta name="googlebot-news" content="nosnippet">

Sử dụng tiêu đề HTTP X-Robots-Tag

Bạn có thể sử dụng X-Robots-Tag dưới dạng một phần tử của phản hồi tiêu đề HTTP cho một URL nhất định. Mọi lệnh có thể dùng được trong thẻ meta robots đều có thể được chỉ định là một X-Robots-Tag. Sau đây là ví dụ về một phản hồi HTTP chứa X-Robots-Tag hướng dẫn các trình thu thập dữ liệu không lập chỉ mục một trang:

 HTTP/1.1 200 OK Date: Tue, 25 May 2010 21:42:43 GMT (…) X-Robots-Tag: noindex (…)

Bạn có thể kết hợp nhiều tiêu đề X-Robots-Tag trong phản hồi HTTP, hoặc bạn có thể chỉ định danh sách các lệnh được phân tách bằng dấu phẩy. Sau đây là ví dụ về một phản hồi tiêu đề HTTP có sử dụng X-Robots-Tag noarchive kết hợp với X-Robots-Tag unavailable_after.

 HTTP/1.1 200 OK Date: Tue, 25 May 2010 21:42:43 GMT (…) X-Robots-Tag: noarchive X-Robots-Tag: unavailable_after: 25 Jun 2010 15:00:00 PST (…)

Nếu bạn muốn, thẻ X-Robots-Tag có thể chỉ định một tác nhân người dùng trước các lệnh. Ví dụ: bạn có thể dùng nhóm tiêu đề HTTP X-Robots-Tag sau đây để cho phép từng công cụ tìm kiếm hiển thị một trang trong kết quả tìm kiếm (kèm theo điều kiện):

 HTTP/1.1 200 OK Date: Tue, 25 May 2010 21:42:43 GMT (…) X-Robots-Tag: googlebot: nofollow X-Robots-Tag: otherbot: noindex, nofollow (…)

Những lệnh được chỉ định mà không nêu rõ tác nhân người dùng thì sẽ được áp dụng cho mọi trình thu thập dữ liệu. Tiêu đề HTTP, tên tác nhân người dùng và các giá trị được chỉ định đều không phân biệt chữ hoa chữ thường.

Lệnh lập chỉ mục và phân phát hợp lệ

Bạn có thể dùng những lệnh sau đây cùng với thẻ meta robots và X-Robots-Tag để kiểm soát hoạt động lập chỉ mục và phân phát đoạn trích. Trong kết quả tìm kiếm, đoạn trích là một trích đoạn văn bản ngắn dùng để thể hiện mức độ phù hợp giữa nội dung của một văn bản với cụm từ tìm kiếm của người dùng. Bảng dưới đây cho thấy tất cả các lệnh mà Google tuân theo và ý nghĩa của những lệnh đó. Mỗi giá trị đại diện cho một lệnh cụ thể. Có thể kết hợp nhiều lệnh trong một danh sách được phân tách bằng dấu phẩy. Các lệnh này không phân biệt chữ hoa chữ thường.

Lệnh

all

Không có hạn chế nào đối với hoạt động lập chỉ mục hay phân phát. Lệnh này là giá trị mặc định và không có tác động nào khi được nêu rõ ràng.

noindex

Không hiển thị trang này trong kết quả tìm kiếm. Nếu bạn không chỉ định lệnh này, thì trang này có thể được lập chỉ mục và hiển thị trong kết quả tìm kiếm.

nofollow

Không đi theo các đường liên kết trên trang này. Nếu bạn không chỉ định lệnh này, thì Google có thể sử dụng các đường liên kết trên trang để khám phá những trang được liên kết. Hãy tìm hiểu thêm về nofollow.

none

Tương đương với noindex, nofollow.

noarchive

Không hiển thị đường liên kết đã lưu trong bộ nhớ đệm trong kết quả tìm kiếm. Nếu bạn không chỉ định lệnh này, thì Google có thể tạo một trang được lưu vào bộ nhớ đệm và người dùng có thể truy cập vào trang đó qua các kết quả tìm kiếm.

nosnippet

Không hiển thị đoạn trích văn bản hoặc video xem trước trong kết quả tìm kiếm cho trang này. Hình thu nhỏ tĩnh (nếu có) vẫn có thể hiển thị nếu mang lại trải nghiệm tốt hơn cho người dùng. Lệnh này áp dụng cho mọi dạng kết quả tìm kiếm (trên Google: tìm kiếm trên web, Google Hình ảnh, Khám phá).

Nếu bạn không chỉ định lệnh này, thì Google có thể tạo một đoạn trích văn bản và video xem trước dựa trên thông tin tìm thấy trên trang.

[external_link offset=1]

max-snippet: [số]

Sử dụng tối đa [số] ký tự trong đoạn trích văn bản cho kết quả tìm kiếm này. (Lưu ý rằng một URL có thể xuất hiện trong nhiều kết quả tìm kiếm trên một trang kết quả tìm kiếm). Lệnh này không ảnh hưởng đến hình ảnh hoặc video xem trước. Lệnh này áp dụng cho mọi dạng kết quả tìm kiếm (như tìm kiếm web trên Google, Google Hình ảnh, Khám phá, Trợ lý). Tuy nhiên, giới hạn này không áp dụng trong trường hợp nhà xuất bản đã cấp riêng quyền sử dụng nội dung. Ví dụ: nếu nhà xuất bản cung cấp nội dung dưới dạng dữ liệu có cấu trúc trong trang hoặc có thỏa thuận cấp phép với Google, thì chế độ cài đặt này không cản trở những phương thức sử dụng cụ thể hơn mà nhà xuất bản đó đã cho phép. Lệnh này bị bỏ qua nếu bạn không chỉ định giá trị [số] có thể phân tích cú pháp được.

Nếu bạn không chỉ định lệnh này, Google sẽ chọn độ dài của đoạn trích.

Giá trị đặc biệt:

  • 0: Không hiển thị đoạn trích. Tương đương với nosnippet.
  • -1: Google sẽ chọn độ dài đoạn trích mà chúng tôi cho là hiệu quả nhất để giúp người dùng khám phá nội dung và đưa người dùng đến trang web của bạn.

Ví dụ:

Cách ngăn một đoạn trích hiển thị trong kết quả tìm kiếm:

 <meta name="robots" content="max-snippet:0">

Cách cho phép hiển thị tối đa 20 ký tự trong đoạn trích:

 <meta name="robots" content="max-snippet:20">

Cách chỉ định rằng không có giới hạn về số lượng ký tự hiển thị trong đoạn trích:

 <meta name="robots" content="max-snippet:-1">

max-image-preview: [chế độ cài đặt]

Chỉ định kích thước tối đa của hình ảnh xem trước cho trang này trong kết quả tìm kiếm.

Nếu bạn không chỉ định lệnh max-image-preview, thì Google có thể hiển thị một hình ảnh xem trước có kích thước mặc định.

Những giá trị [chế độ cài đặt] được chấp nhận:

  • none: Không hiển thị hình ảnh xem trước.
  • standard: Có thể hiển thị một hình ảnh xem trước mặc định.
  • large: Có thể hiển thị một hình ảnh xem trước lớn hơn, với kích thước tối đa bằng chiều rộng của khung nhìn.

Lệnh này áp dụng cho mọi dạng kết quả tìm kiếm (như tìm kiếm web trên Google, Google Hình ảnh, Khám phá, Trợ lý). Tuy nhiên, giới hạn này không áp dụng trong trường hợp nhà xuất bản đã cấp riêng quyền sử dụng nội dung. Ví dụ: nếu nhà xuất bản cung cấp nội dung dưới dạng dữ liệu có cấu trúc trong trang (chẳng hạn như AMP và phiên bản chuẩn hóa của một bài viết) hoặc có thỏa thuận cấp phép với Google, thì chế độ cài đặt này sẽ không cản trở những phương thức sử dụng cụ thể hơn mà nhà xuất bản đó đã cho phép.

Nếu không muốn Google sử dụng những hình thu nhỏ có kích thước lớn hơn khi các trang AMP và phiên bản chuẩn hóa của bài viết xuất hiện trong kết quả của Tìm kiếm hoặc Khám phá, các nhà xuất bản nên chỉ định giá trị max-image-previewstandard hoặc none.

Ví dụ:

 <meta name="robots" content="max-image-preview:standard">

max-video-preview: [số]

Sử dụng đoạn xem trước video có thời lượng tối đa [số] giây cho các video trên trang này trong kết quả tìm kiếm.

Nếu bạn không chỉ định lệnh max-video-preview, thì Google có thể hiển thị một đoạn video trong kết quả tìm kiếm và bạn cho Google quyết định thời lượng xem trước đoạn video đó.

Giá trị đặc biệt:

  • 0: Được sử dụng tối đa một hình ảnh tĩnh, theo chế độ cài đặt của max-image-preview.
  • -1: Không có giới hạn.

Lệnh này áp dụng cho mọi dạng kết quả tìm kiếm (trên Google: tìm kiếm trên web, Google Hình ảnh, Google Video, Khám phá, Trợ lý). Lệnh này bị bỏ qua nếu bạn không chỉ định giá trị [số] có thể phân tích cú pháp được.

Ví dụ:

 <meta name="robots" content="max-video-preview:-1">

notranslate

Không cung cấp bản dịch của trang này trong kết quả tìm kiếm. Nếu bạn không chỉ định lệnh này, thì Google có thể hiển thị một đường liên kết bên cạnh kết quả để giúp người dùng xem bản dịch của nội dung trên trang.

noimageindex

Không lập chỉ mục hình ảnh trên trang này. Nếu bạn không chỉ định giá trị này, thì hình ảnh trên trang có thể được lập chỉ mục và hiển thị trong kết quả tìm kiếm.

unavailable_after: [ngày/giờ]

Không hiển thị trang này trong kết quả tìm kiếm sau ngày/giờ chỉ định. Bạn phải chỉ định ngày/giờ ở một định dạng được chấp nhận rộng rãi, chẳng hạn như RFC 822, RFC 850 và ISO 8601. Lệnh này sẽ bị bỏ qua nếu bạn không chỉ định ngày/giờ hợp lệ. Theo mặc định, không có ngày hết hạn cho nội dung.

Nếu bạn không chỉ định lệnh này, thì trang này có thể xuất hiện vô thời hạn trong kết quả tìm kiếm.

Ví dụ:

[external_link offset=2]

 <meta name="robots" content="unavailable_after: 0376108573">

Xử lý các lệnh chỉ dẫn cả hai hoạt động lập chỉ mục và phân phát

Bạn có thể tạo một hướng dẫn gồm nhiều lệnh bằng cách dùng dấu phẩy để kết hợp các lệnh trong thẻ meta robots. Sau đây là ví dụ về một thẻ meta robots hướng dẫn trình thu thập dữ liệu web không lập chỉ mục trang và không thu thập dữ liệu của đường liên kết nào trên trang:

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

Sau đây là ví dụ về cách đặt giới hạn 20 ký tự cho đoạn trích văn bản và cho phép hiển thị một hình ảnh xem trước có kích thước lớn:

 <meta name="robots" content="max-snippet:20, max-image-preview:large">

Trong trường hợp bạn chỉ định nhiều lệnh cho nhiều trình thu thập dữ liệu, công cụ tìm kiếm sẽ sử dụng lệnh tổng hợp của các lệnh không cho phép. Ví dụ:

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

Khi thu thập dữ liệu của trang chứa những thẻ meta này, Googlebot sẽ diễn giải trang đó là có lệnh noindex, nofollow.

Sử dụng thuộc tính HTML data-nosnippet

Bạn có thể chỉ dẫn các công cụ tìm kiếm không sử dụng các phần văn bản của trang HTML làm đoạn trích. Bạn có thể triển khai lệnh này ở cấp phần tử HTML bằng thuộc tính HTML data-nosnippet trong các phần tử span, divsection. data-nosnippet được coi là một thuộc tính boolean (logic). Tương tự như với mọi thuộc tính boolean (logic), mọi giá trị được chỉ định sẽ bị bỏ qua. Để đảm bảo máy đọc được thì phần HTML đó phải là HTML hợp lệ và bạn phải đóng chính xác mọi thẻ liên quan.

Ví dụ:

 <p>This text can be shown in a snippet <span data-nosnippet>and this part would not be shown</span>.</p> <div data-nosnippet>not in snippet</div> <div data-nosnippet="true">also not in snippet</div> <div data-nosnippet="false">also not in snippet</div> <!-- all values are ignored --> <div data-nosnippet>some text</html> <!-- unclosed "div" will include all content afterwards --> <mytag data-nosnippet>some text</mytag> <!-- NOT VALID: not a span, div, or section -->

Google thường kết xuất các trang để lập chỉ mục nhưng quá trình kết xuất không phải lúc nào cũng diễn ra. Do đó, việc trích xuất data-nosnippet có thể xảy ra cả trước và sau khi kết xuất. Vì không phải lúc nào Google cũng thực hiện thao tác kết xuất nên bạn không cần thêm hoặc xóa thuộc tính data-nosnippet của các nút hiện có qua JavaScript. Khi thêm các phần tử DOM thông qua JavaScript, hãy dùng thuộc tính data-nosnippet nếu cần thiết khi bắt đầu thêm phần tử này vào DOM của trang. Nếu bạn sử dụng các phần tử tùy chỉnh, hãy gói hoặc kết xuất các phần tử đó trong các phần tử div, span hoặc section nếu bạn cần sử dụng data-nosnippet.

Sử dụng dữ liệu có cấu trúc

Thẻ meta robots chi phối lượng nội dung mà Google tự động trích xuất từ các trang web để hiển thị dưới dạng kết quả tìm kiếm. Nhưng nhiều nhà xuất bản cũng sử dụng dữ liệu có cấu trúc schema.org để cung cấp thông tin cụ thể cho việc trình bày kết quả tìm kiếm. Các giới hạn của thẻ meta robots không ảnh hưởng đến việc sử dụng loại dữ liệu có cấu trúc này, ngoại trừ article.description và các giá trị của description đối với dữ liệu có cấu trúc được chỉ định cho các tác phẩm sáng tạo khác. Để chỉ định thời lượng tối đa của nội dung xem trước dựa trên những giá trị description này, hãy sử dụng thẻ meta robots max-snippet. Ví dụ: một trang chứa dữ liệu có cấu trúc recipe sẽ đủ điều kiện xuất hiện trong băng chuyền công thức nấu ăn, ngay cả khi văn bản xem trước bị giới hạn. Bạn có thể sử dụng max-snippet để giới hạn độ dài của văn bản xem trước nhưng thẻ meta robots đó không áp dụng khi thông tin được cung cấp bằng dữ liệu có cấu trúc để hiển thị dưới dạng kết quả nhiều định dạng.

Để quản lý việc sử dụng dữ liệu có cấu trúc cho các trang web của bạn, hãy sửa đổi các loại và giá trị của dữ liệu có cấu trúc, thêm hoặc xóa thông tin để chỉ cung cấp dữ liệu mà bạn muốn hiển thị. Xin lưu ý rằng hệ thống vẫn có thể sử dụng dữ liệu có cấu trúc cho kết quả tìm kiếm khi bạn khai báo dữ liệu đó trong phần tử data-nosnippet.

Cách triển khai X-Robots-Tag trong thực tế

Bạn có thể thêm X-Robots-Tag vào phản hồi HTTP của trang web thông qua các tệp cấu hình của phần mềm máy chủ web cho trang web của bạn. Ví dụ: trên các máy chủ web dựa trên Apache, bạn có thể sử dụng các tệp .htaccess và httpd.conf. Lợi ích của việc sử dụng X-Robots-Tag trong phản hồi HTTP là bạn có thể chỉ định những lệnh thu thập dữ liệu có phạm vi áp dụng trên toàn bộ trang web. Các biểu thức chính quy giúp mang lại mức độ linh hoạt cao hơn.

Ví dụ: để thêm một X-Robots-Tag noindex, nofollow vào phản hồi HTTP cho mọi tệp .PDF trên toàn bộ trang web, hãy thêm đoạn mã sau vào tệp .htaccess gốc hoặc tệp httpd.conf của trang web trên Apache, hoặc tệp .conf của trang web trên NGINX

Apache:

 <Files ~ "\.pdf$"> Header set X-Robots-Tag "noindex, nofollow" </Files>

NGINX:

 location ~* \.pdf$ { add_header X-Robots-Tag "noindex, nofollow"; }

Bạn có thể sử dụng X-Robots-Tag cho các tệp không phải HTML (chẳng hạn như tệp hình ảnh) nếu không thể sử dụng thẻ meta robots trong HTML. Sau đây là ví dụ về cách thêm lệnh X-Robots-Tag noindex cho các tệp hình ảnh (.png, .jpeg, .jpg, .gif) trên toàn bộ trang web:

Apache:

 <Files ~ "\.(png|jpe?g|gif)$"> Header set X-Robots-Tag "noindex" </Files>

NGINX:

 location ~* \.(png|jpe?g|gif)$ { add_header X-Robots-Tag "noindex"; }

Kết hợp lệnh thu thập dữ liệu với lệnh lập chỉ mục/phân phát

Trình thu thập dữ liệu sẽ phát hiện thẻ meta robots và tiêu đề HTTP X-Robots-Tag khi thu thập dữ liệu một URL. Nếu tệp robots.txt không cho phép thu thập dữ liệu trên một trang, thì trình thu thập dữ liệu sẽ không tìm được thông tin nào về lệnh lập chỉ mục hoặc lệnh phân phát và vì vậy, những lệnh đó sẽ bị bỏ qua. Nếu muốn trình thu thập dữ liệu tuân theo các lệnh lập chỉ mục hoặc phân phát, thì bạn không được chặn quá trình thu thập dữ liệu trên những URL chứa các lệnh đó. [external_footer]