Tài liệu này trình bày 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 1 trang.
Lưu ý rằng các trình thu thập dữ liệu chỉ có thể đọc và tuân theo những chế độ cài đặt này nếu được phép tiếp cận vào các trang có những chế độ đó.
Lệnh hoặc thẻ <meta name="robots" content="noindex">
áp dụng cho các trình thu thập dữ liệu của công cụ tìm kiếm. Để chặn các trình thu thập dữ liệu không phải của công cụ tìm kiếm, chẳng hạn như AdsBot-Google
, bạn có thể phải thêm các lệnh nhắm mục tiêu đến 1 trình thu thập dữ liệu cụ thể (ví dụ: <meta name="AdsBot-Google" content="noindex">
).
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 1 trang nhất định, như trong ví dụ sau:
<!DOCTYPE html> <html><head> <meta name="robots" content="noindex"> (…) </head> <body>(…)</body> </html>
Trong ví dụ này, thẻ meta robots hướng dẫn các công cụ tìm kiếm không cho trang xuất hiện 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. Để nhắm đến 1 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 nhắm đế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 1 tác nhân người dùng của riêng mình để yêu cầu 1 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
. Để chỉ ngăn Google 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 đưa trang này vào kết quả tìm kiếm. Cả hai thuộc tính name
và content
đề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ụ: để cho phép 1 trang xuất hiện trong kết quả tìm kiếm trên web của Google nhưng không cho phép trang đó xuất hiện 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">
Để chặn việc lập chỉ mục các tài nguyên không phải HTML (chẳng hạn như tệp PDF, tệp video hoặc tệp hình ảnh), hãy sử dụng tiêu đề phản hồi X-Robots-Tag
.
Sử dụng tiêu đề HTTP X-Robots-Tag
Bạn có thể sử dụng X-Robots-Tag
dưới dạng 1 phần tử của phản hồi tiêu đề HTTP cho 1 URL nhất định. Mọi lệnh có thể dùng được trong thẻ meta robots đều có thể được chỉ định là 1 X-Robots-Tag
. Sau đây là ví dụ về 1 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 1 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ề 1 phản hồi tiêu đề HTTP có sử dụng lệnh X-Robots-Tag
noarchive
kết hợp với lệnh 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 1 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 các công cụ tìm kiếm khác nhau hiển thị 1 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 tiến hành trực tiếp 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à 1 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 1 văn bản với cụm từ tìm kiếm của người dùng. Bảng dưới 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 1 lệnh cụ thể. Có thể kết hợp nhiều lệnh trong 1 danh sách được phân tách bằng dấu phẩy hoặc trong từng thẻ meta riêng biệt. Các lệnh này không phân biệt chữ hoa chữ thường.
Lệnh | |
---|---|
| Không có hạn chế nào đối với tiến hành trực tiếp lập chỉ mục hay phân phát. Lệnh này là giá trị mặc định và không gây ảnh hưởng gì khi được nêu rõ ràng. |
| Không hiển thị trang, nội dung phương tiện hoặc tài nguyên 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ội dung phương tiện hoặc tài nguyên này có thể được lập chỉ mục và xuất hiện trong kết quả tìm kiếm. Để xóa thông tin khỏi Google, hãy làm theo hướng dẫn từng bước của LCA. |
| 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 để theo dõi những trang được liên kết. Hãy tìm hiểu thêm về nofollow . |
| Tương đương với noindex, nofollow . |
| 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 1 trang được lưu vào bộ nhớ đệm và người dùng có thể tiếp cận trang đó qua kết quả tìm kiếm. |
| Không hiện hộp tìm kiếm cho đường liên kết trang web trong kết quả tìm kiếm cho trang này. Nếu bạn không chỉ định lệnh này, thì Google có thể tạo 1 hộp tìm kiếm riêng cho trang web của bạn trong kết quả tìm kiếm, cùng với các đường liên kết trực tiếp khác đến trang web của bạn. |
| Không hiện đ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, theo dõi). Nếu bạn không chỉ định lệnh này, thì Google có thể tạo 1 đ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. |
| Google được phép lập chỉ mục nội dung của 1 trang nếu trang đó được nhúng trong 1 trang khác thông qua iframes hoặc các thẻ HTML tương tự, bất kể có lệnh noindex hay không.
|
| 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 1 URL có thể xuất hiện trong nhiều kết quả tìm kiếm trên 1 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, theo dõi, 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 [số] có thể phân tích cú pháp. 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:
Ví dụ: Cách ngăn 1 đ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"> |
| 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 Những giá trị [chế độ cài đặt] được chấp thuậ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, theo dõi, 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 1 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 bạn 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 theo dõi, hãy chỉ định giá trị Ví dụ: <meta name="robots" content="max-image-preview:standard"> |
| 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 Giá trị đặc biệt:
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, theo dõi, Trợ lý). Lệnh này bị bỏ qua nếu bạn không chỉ định [số] có thể phân tích cú pháp. Ví dụ: <meta name="robots" content="max-video-preview:-1"> |
| 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ể cung cấp bản dịch cho đường liên kết tiêu đề và đoạn trích của kết quả tìm kiếm đối với những kết quả không dùng ngôn ngữ của cụm từ tìm kiếm. Nếu người dùng nhấp vào đường liên kết tiêu đề đã được dịch, thì mọi tiến hành tương tác tiếp theo của người dùng với trang đó sẽ diễn ra thông qua Google Dịch. Công cụ này sẽ tự động dịch mọi đường liên kết mà người dùng đi theo. |
| 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. |
| 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ờ ở 1 định dạng được chấp thuậ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. Googlebot sẽ giảm đáng kể tốc độ thu thập dữ liệu của URL sau ngày và giờ được chỉ định. Ví dụ: <meta name="robots" content="unavailable_after: 2020-09-21"> |
Xử lý các lệnh lập chỉ mục và phân phát kết hợp
Bạn có thể tạo 1 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 hoặc bằng cách dùng nhiều thẻ meta. Sau đây là ví dụ về 1 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:
Danh sách được phân tách bằng dấu phẩy
<meta name="robots" content="noindex, nofollow">
Nhiều thẻ meta
<meta name="robots" content="noindex"> <meta name="robots" content="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ị 1 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ông cụ tìm kiếm không sử dụng những phần văn bản nào 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
, div
và section
. data-nosnippet
được coi là 1 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 các giá trị description
này, hãy sử dụng thẻ meta robots max-snippet
. Ví dụ: 1 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 1 lệnh 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>
location ~* \.pdf$ { add_header X-Robots-Tag "noindex, nofollow"; }
NGINX
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"; }
Bạn cũng có thể đặt tiêu đề X-Robots-Tag
cho từng tệp tĩnh riêng lẻ:
Apache
# the htaccess file must be placed in the directory of the matched file. <Files "unicorn.pdf"> Header set X-Robots-Tag "noindex, nofollow" </Files>
NGINX
location = /secrets/unicorn.pdf { add_header X-Robots-Tag "noindex, nofollow"; }
Kết hợp lệnh trong tệp robots.txt với lệnh lập chỉ mục và lệnh 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 1 URL. Nếu tệp robots.txt không cho phép thu thập dữ liệu trên 1 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 đó.