Hướng dẫn về X-Robots-Tag
Đó X-Robots-Tag HTTP header carries đó giống nhau directives as đó robots meta tag, so bạn có thể noindex PDFs, images, và videos. Apache, Nginx, và Cloudflare configs plus cách verify với curl.
Ngôn ngữ
1 tín hiệu bằng chứng trên trang này
- Công cụ trực tuyến liên quanHTTP Header Checker
Đó X-Robots-Tag là đó HTTP-header twin of đó robots meta tag: giống nhau directive vocabulary (noindex, nofollow, nosnippet, và đó rest), nhưng delivered trong đó header phản hồi so điều này hoạt động on files với không HTML <head> — PDFs, images, videos, bất cứ điều gì. Bạn set điều này tại đó máy chủ (Apache, Nginx, hoặc một CDN/Worker), so một rule có thể noindex mỗi PDF on đó site. Đó single hầu hết phổ biến mistake là cũng blocking đó file trong robots.txt — mà hides đó header, so Google không bao giờ crawl đó file để đọc đó noindex và đó directive là đã bỏ qua. Verify đó trực tiếp header với curl -I, và watch cho một CDN serving một khác nhau header hơn của bạn origin (đó 'Noindex detected trong X-Robots-Tag' Search Console failure).
TL;DR — Đó X-Robots-Tag là một way để tell các công cụ tìm kiếm “don’t index this file” (bản dịch) «không chỉ mục này file» — nhưng thay vì putting một tag trong đó trang HTML, đây là đã gửi trong đó máy chủ phản hồi. Đó matters vì some files (PDFs, images, videos) có không HTML để put một tag trong. So khi bạn cần để giữ một PDF out of Google, đó X-Robots-Tag là cách bạn làm điều này.
Evidence for this claim Google supports robots directives in the X-Robots-Tag HTTP response header, including for non-HTML resources such as PDFs. Scope: Google crawling and indexing controls delivered by HTTP header. Confidence: high · Verified: Google Search Central: X-Robots-Tag Evidence for this claim Google must be allowed to crawl a resource to discover and apply its X-Robots-Tag noindex rule. Scope: A robots.txt block can prevent Google from seeing the response header. Confidence: high · Verified: Google Search Central: Combining crawling and indexing rules
Điều gì điều này là
bạn đã probably seen đó robots meta tag — một little snippet trong một trang HTML
đó says <meta name="robots" content="noindex" /> để giữ đó trang out of
tìm kiếm. Đó X-Robots-Tag làm đó chính xác giống nhau job, nhưng điều này travels trong đó HTTP
header phản hồi đó máy chủ gửi lại, không trong đó trang HTML.
Vì sao sẽ bạn cần đó? Vì some điều trên trang web của bạn không HTML các trang.
MỘT PDF có không <head> section. Neither làm an image hoặc một video file. có
nowhere để put một meta tag. So nếu bạn muốn để giữ một PDF out of Google chỉ mục, bạn
không thể dùng đó meta tag — bạn dùng đó X-Robots-Tag header thay vì.
Khi bạn’d reach cho điều này
- Bạn có một PDF (một price list, an old whitepaper, một gated download đó leaked) cho thấy lên trong tìm kiếm và bạn muốn điều này đã biến mất.
- Bạn muốn để noindex một toàn bộ class of files tại khi — mỗi PDF on đó site — với một rule, thay vì editing them một by một.
- bạn là dealing với images hoặc videos bạn không muốn được lập chỉ mục on của họ own.
Cho một thông thường HTML trang, bạn’d chỉ dùng đó meta tag — đây là easier. Đó X-Robots-Tag là cho đó cases nơi đó meta tag không thể reach.
Đó một mistake mọi người làm
Ở đây đó trap, và điều này catches mọi người constantly. They muốn một PDF đã biến mất, so they
làm hai điều: they block điều này trong robots.txt và they thêm an X-Robots-Tag
noindex. Belt và suspenders, right?
Sai. Blocking điều này trong robots.txt dừng Google từ bao giờ fetching đó file — so Google không bao giờ sees đó noindex header bạn cẩn thận set. Đó directive nhận đã bỏ qua, và đó PDF có thể stay trong tìm kiếm. Đó rule là: để noindex một file, bạn có để let Google crawl điều này so điều này có thể đọc đó header. không block điều này.
Cách kiểm tra điều này
Bạn (hoặc một nhà phát triển) có thể xác nhận đó header là trực tiếp với một single command:
curl -I https://example.com/file.pdf. Đó prints đó các header phản hồi không có
downloading đó file, và bạn tìm đó X-Robots-Tag line. có một sao chép và dán
version trong đó Scripts tab.
Muốn đó thực tế máy chủ config cho Apache, Nginx, và Cloudflare — plus cách đích chỉ Googlebot và verify đó trực tiếp header? Chuyển để đó Advanced tab.
TL;DR — Đó X-Robots-Tag là đó HTTP-header phân phối of đó giống nhau directive vocabulary as đó robots meta tag — “Any rule that can be used in a robots
Evidence for this claim Google supports robots directives in the X-Robots-Tag HTTP response header, including for non-HTML resources such as PDFs. Scope: Google crawling and indexing controls delivered by HTTP header. Confidence: high · Verified: Google Search Central: X-Robots-Tag Evidence for this claim Google must be allowed to crawl a resource to discover and apply its X-Robots-Tag noindex rule. Scope: A robots.txt block can prevent Google from seeing the response header. Confidence: high · Verified: Google Search Central: Combining crawling and indexing rulesmetatag can also be specified as anX-Robots-Tag.” (bản dịch) «Bất kỳ rule đó có thể là dùng trong một robots tag có thể cũng là specified as an .» Điều này tồn tại cho một big reason: non-HTML các tài nguyên (PDFs, images, videos) có không<head>, so đó header là đó supported way để noindex them. Bạn set điều này máy chủ-side (Apache<FilesMatch>, Nginxadd_header, hoặc một Cloudflare Transform Rule / Worker), so một rule covers một toàn bộ file loại. Tùy chọn đích một crawler vớiX-Robots-Tag: googlebot: noindex; với không người dùng-agent điều này áp dụng để all of them. Đó spine caveat, shared với đó meta tag: đó file phải được crawlable — một robots.txt block hides đó header, so đó noindex là “not found and… therefore ignored.” (bản dịch) «không tìm thấy và… do đó đã bỏ qua.» Verify vớicurl -I, và watch cho CDN-so với-origin header drift.
Điều gì đó X-Robots-Tag thực ra là
Đó X-Robots-Tag là đó HTTP header phản hồi version of đó robots <meta>
tag. đó là đó toàn bộ concept. Google là rõ ràng đó hai là interchangeable
trong vocabulary: “The X-Robots-Tag can be used as an element of the HTTP header
response for a given URL. Any rule that can be used in a robots meta tag can also
be specified as an X-Robots-Tag.” (bản dịch) «Đó có thể là dùng as an element of đó HTTP header phản hồi cho một được cho URL. Bất kỳ rule đó có thể là dùng trong một robots tag có thể cũng là specified as an .» MỘT phản hồi carrying điều này looks như này:
HTTP/1.1 200 OK
Date: Tue, 25 May 2010 21:42:43 GMT
(…)
X-Robots-Tag: noindex
(…)So nếu bạn đã understand đó robots meta tag, bạn đã understand đó
directives ở đây — noindex, nofollow, nosnippet, và đó rest behave
identically cho Google. Điều duy nhất đó thay đổi là đó phân phối mechanism:
header, không HTML.
Đó sự tương đương là một Google-được ghi lại contract, không một universal web tiêu chuẩn — đó X-Robots-Tag là một de facto header với không IETF đặc tả backing điều này. Google says so trực tiếp on đó giống nhau doc: “It is possible that these rules may not be treated the same by all other search engines.” (bản dịch) «Điều này là có thể đó những rules có thể không là treated đó giống nhau by all other các công cụ tìm kiếm.» Treat “same directives as the meta tag” (bản dịch) «giống nhau directives as đó meta tag» as đúng cho Google (và, theo đó Other Engines section dưới, largely đúng cho Bing cốt lõi set) — không as một bảo đảm cho mỗi crawler, including AI các crawler, đó có thể đọc này header.
Vì sao điều này tồn tại — non-HTML files
Đó defining dùng case là files đó có không HTML <head> để drop một meta tag vào.
Google hướng dẫn là trực tiếp: “To block indexing of non-HTML resources, such as PDF
files, video files, or image files, use the X-Robots-Tag response header
instead.” (bản dịch) «Để block lập chỉ mục of non-HTML các tài nguyên, such as PDF files, video files, hoặc image files, dùng đó header phản hồi thay vì.» đó là đó headline. MỘT PDF, an image, hoặc một video không thể carry một
robots meta tag — có nowhere để put điều này — so đó header là đó supported route
để noindex them.
có một second, quieter reason: đây là set máy chủ-side, so một rule có thể apply một
directive để an entire class of files (mỗi .pdf on đó site) hoặc site-wide,
không có bạn editing mỗi tài nguyên. đó là powerful, và — as we’ll see — cũng nơi
đó foot-guns trực tiếp.
Worked ví dụ — noindexing một single PDF: chẳng hạn
https://example.com/whitepapers/old-report.pdf là cho thấy lên trong tìm kiếm và bạn
muốn điều này đã biến mất. Hai conditions cả hai có để hold: (1) đó tài nguyên phải stay
crawlable — không Disallow on điều này trong robots.txt — và (2) đó máy chủ phản hồi
cho đó chính xác URL phải carry X-Robots-Tag: noindex. Set đó rule (Apache/Nginx/
Cloudflare các ví dụ dưới), xác nhận với curl -I đó trực tiếp phản hồi
thực ra trả về đó header (see đó verification section), thì chờ cho
Google để recrawl đó URL. Skip either condition và đó PDF vẫn giữ được lập chỉ mục: skip
crawlability và Google không bao giờ đọc đó header; skip đó header và có
không có gì telling Google để drop điều này.
Không turn “non-HTML” vào “wrong file type.” (bản dịch) «sai file loại.» Google publishes một rộng list of
indexable file types,
including PDF, phổ biến office formats, text, XML, và several nguồn-code formats.
MỘT crawler nên bảo toàn three tách biệt observations: đó URL extension, đó
declared Content-Type, và đó bytes thực ra đã trả về. MỘT mismatch là một phân phối
warning; một legitimate supported document không phải an HTML-trang failure và nên có
HTML-chỉ kiểm tra marked không applicable. Dùng X-Robots-Tag hoặc an HTTP Link canonical
khi những controls là needed cho đó non-HTML tài nguyên.
Size limits cũng cần an engine-và-basis label. Google March 2026 crawler cập nhật documents một 2 MB theo-URL cutoff cho Googlebot (Tìm kiếm), một 64 MB PDF cutoff, và một 15 MB default cho unspecified Google crawler clients. Những là decimal MB tài nguyên limits, không interchangeable với một tool decoded-thân phản hồi MiB safety cap. See Google hiện tại crawler limits trước chuyển thành một sản phẩm limit vào an SEO diagnosis.
Meta tag so với X-Robots-Tag — khi nào nên dùng mà
Đó decision là đơn giản khi bạn frame điều này khoảng đó <head>:
- HTML trang bạn control đó markup of → dùng đó robots meta tag. đây là easier để set, easier để đọc, và theo-trang.
- Non-HTML file (PDF, image, video, feed) → dùng đó X-Robots-Tag header.
có không other option; những có không
<head>. - Bạn’d rather control điều này máy chủ-side / site-wide, hoặc bạn không thể easily touch mỗi trang HTML (CDN, app layer) → đó header là đó cleaner lever ngay cả cho HTML.
họ là không rivals và một không “stronger” — giống nhau directives, khác nhau reach.
Đó directives bạn có thể dùng
Đó X-Robots-Tag accepts đó giống nhau directive vocabulary as đó meta tag. Đó đầy đủ supported set:
noindex— không chỉ mục này tài nguyên.nofollow— không follow links từ điều này.none— shorthand chonoindex, nofollow.all— không restrictions (đó default).nosnippet— không text snippet hoặc video preview trong kết quả (đó trang-cấp độ cousin ofdata-nosnippet, mà scopes điều này để part of một trang).max-snippet: [number]— cap đó snippet length.max-image-preview: [none | standard | large]— cap đó preview image size.max-video-preview: [number]— cap đó video preview length trong seconds.noarchive— không được lưu đệm link.noimageindex— không chỉ mục images on đó trang.notranslate— không offer translation trong kết quả.indexifembedded— không chỉ mục này tài nguyên on của nó own, nhưng làm cho phép lập chỉ mục nơi đây là embedded (e.g. trong an iframe). Pair điều này vớinoindex.unavailable_after: [date/time]— drop đó URL từ kết quả sau một date. Đó date phải được trong một widely adopted format (RFC 822, RFC 850, hoặc ISO 8601), e.g.:
X-Robots-Tag: unavailable_after: 25 Jun 2010 15:00:00 PSTPresenting đó bảng khi là deliberate: đây là đó giống nhau list shared by đó meta tag, mà là đó sạch nhất way để think về đó mối quan hệ giữa đó hai.
Targeting một cụ thể crawler
Bạn có thể tùy chọn prefix đó directive với một người dùng-agent token: Google notes đó header “may optionally specify a user agent before the rules,” (bản dịch) «có thể tùy chọn specify một người dùng agent trước đó rules,» và đó “Rules specified without a user agent are valid for all crawlers. The HTTP header, the user agent name, and the specified values are not case sensitive.” (bản dịch) «Rules specified không có một người dùng agent là hợp lệ cho all các crawler. Đó HTTP header, người dùng agent name, và đó specified các giá trị không phải case sensitive.» So này là hợp lệ syntax để noindex chỉ cho Google:
Evidence for this claim Google's header syntax permits an optional crawler name before a rule list, and Google treats header names, crawler names and directive values as case-insensitive. Scope: production HTML and HTTP responses Confidence: high · Verified: Robots meta tag, data-nosnippet, and X-Robots-Tag specificationsX-Robots-Tag: googlebot: noindexVà bạn có thể stack lines cho khác nhau bots. (Một note on attribution: Google own
được ghi lại ví dụ of theo-crawler targeting dùng X-Robots-Tag: googlebot: nofollow paired với X-Robots-Tag: otherbot: noindex, nofollow — so
googlebot: noindex là correct, supported syntax, chỉ không đó verbatim line trong
Google sample.)
Multiple rules và conflicting directives
bạn là không limited để một directive theo phản hồi. Google documents này
trực tiếp: “Multiple rules may be combined in a comma-separated list or in
separate meta tags. These rules are case-insensitive.” (bản dịch) «Multiple rules có thể là combined trong một comma-separated list hoặc trong tách biệt meta tags. Những rules là case-insensitive.» — đó giống nhau là đúng cho
đó header: gửi X-Robots-Tag: noindex, nofollow as một comma-separated line,
hoặc repeat đó header trường (X-Robots-Tag: noindex on một line,
X-Robots-Tag: nofollow on một sản phẩm khác). Cả hai là hợp lệ; đó máy chủ config các ví dụ
dưới dùng đó comma-separated form.
Khi hai rules sẽ conflict, Google resolves điều này trong favor of đó tighter
restriction: “In the case of conflicting robots rules, the more restrictive
rule applies. For example, if a page has both max-snippet:50 and nosnippet
rules, the nosnippet rule will apply.” (bản dịch) «Trong đó case of conflicting robots rules, đó hơn restrictive rule áp dụng. Ví dụ, nếu một trang có cả hai và rules, đó rule sẽ apply.» đó là Google được ghi lại behavior —
đó giống nhau “not treated the same by all other search engines” (bản dịch) «không treated đó giống nhau by all other các công cụ tìm kiếm» caveat trên
áp dụng để conflict resolution cũng, so không assume mỗi crawler picks đó
stricter rule cùng cách.
Cách set điều này (máy chủ config)
Những là known-good, battle-tested patterns I’d reach cho — treat mỗi snippet
dưới as an environment-cụ thể ví dụ, không một portable recipe: inheritance
rules, route matching, các chuyển hướng, phản hồi các mã trạng thái, và bất kỳ CDN hoặc
application layer trong front of đó máy chủ có thể all thay đổi điều gì thực ra reaches
đó crawler. Xác nhận đó delivered header on của bạn own stack trước shipping,
không chỉ đó config file. Configs và snippets là trong đó Scripts tab,
sao chép và dán ready, cho Apache (<FilesMatch> + mod_headers), Nginx (location
add_header), và Cloudflare (một Transform Rule hoặc một Worker). Phiên bản ngắn gọn: một rule, khớp on đó file extension, setsX-Robots-Tag: noindexon mỗi file of đó loại. Để đích một single crawler, người dùng-agent token goes bên trong đó header giá trị (Header set X-Robots-Tag "googlebot: noindex"), không as một tách biệt mechanism.
Đó #1 mistake — không block đó file trong robots.txt
Này là đó spine of đó toàn bộ topic, so I’ll là loud về điều này. Mọi người ai muốn một
PDF đã biến mất thường làm hai điều tại khi: block điều này trong robots.txt và set
X-Robots-Tag: noindex. Đó defeats itself. Google có để crawl đó file để đọc
đó header — và đó robots.txt block dừng đó crawl.
Google own wording: “robots meta tags and X-Robots-Tag HTTP headers are discovered when a URL is crawled. If a page is disallowed from crawling through the robots.txt file, then any information about indexing or serving rules will not be found and will therefore be ignored.” (bản dịch) «robots meta tags và X-Robots-Tag HTTP các header là discovered khi một URL là được crawl. Nếu một trang là disallowed từ crawling qua đó robots.txt file, thì bất kỳ information về lập chỉ mục hoặc serving rules sẽ không là được tìm thấy và sẽ do đó là đã bỏ qua.» Và đó corollary: “If indexing or serving rules must be followed, the URLs containing those rules cannot be disallowed from crawling.” (bản dịch) «Nếu lập chỉ mục hoặc serving rules phải được followed, đó URLs containing những rules không thể là disallowed từ crawling.»
Restated cho noindex cụ thể: “For the noindex rule to be effective, the
page or resource must not be blocked by a robots.txt file, and it has to be
otherwise accessible to the crawler. If the page is blocked by a robots.txt file or
the crawler can’t access the page, the crawler will never see the noindex rule,
and the page can still appear in search results.” (bản dịch) «Cho đó rule để là effective, đó trang hoặc tài nguyên không được là blocked by một robots.txt file, và điều này có để là nếu không accessible để đó crawler. Nếu đó trang là blocked by một robots.txt file hoặc đó crawler không thể access đó trang, đó crawler sẽ không bao giờ see đó rule, và đó trang có thể vẫn xuất hiện trong kết quả tìm kiếm.» Này là đó giống nhau
crawling-so với-lập chỉ mục phân biệt đó chạy qua robots.txt và đó meta
tag: robots.txt controls crawling; đó X-Robots-Tag controls lập chỉ mục; và một
crawl block hides đó lập chỉ mục rule. Để deindex một PDF: cho phép crawling, serve
X-Robots-Tag: noindex, và chờ cho đó re-crawl.
(Note đó flip side cũng: một robots.txt Disallow on của nó own không deindex một file
either — một blocked PDF có thể vẫn là được lập chỉ mục nếu other các trang link để điều này, chỉ không có
một snippet. Blocking và noindexing solve khác nhau các vấn đề.)
Cách verify điều này với curl
không trust đó một config “nên” hoạt động — kiểm tra đó trực tiếp header. curl -I (hoặc
curl -sI … | grep -i x-robots-tag) prints đó các header phản hồi không có
downloading đó thân phản hồi:
curl -sI https://example.com/file.pdf | grep -i x-robots-tagBạn có thể cũng spoof đó bot view để see điều gì Googlebot sẽ nhận
(curl -A "Googlebot" -sI …). Hầu hết các hướng dẫn point bạn tại một trình duyệt extension hoặc
Screaming Frog cho này; curl là nhanh hơn và scriptable, và đầy đủ commands là trong
đó Scripts tab.
Một caveat on -I: điều này gửi một HEAD yêu cầu, và một máy chủ hoặc CDN rule đó chỉ
fires on GET sẽ không cho thấy lên trong một HEAD phản hồi. Treat curl -I as một fast đầu tiên
kiểm tra, không đó cuối word — xác nhận đó giống nhau header on một real curl GET
yêu cầu (curl -sD - -o /dev/null https://example.com/file.pdf | grep -i x-robots-tag), và kiểm tra điều này sau các chuyển hướng và on đó công khai
CDN-fronted URL, không chỉ origin.
Watch cho CDN-so với-origin drift
Vì đó header là set máy chủ- và CDN-side, đó giá trị Googlebot nhận có thể
differ từ điều gì của bạn origin emits — an edge rule có thể thêm, strip, hoặc bộ nhớ đệm một
header. Đó thực tế chế độ lỗi ở đây là đó “Noindex detected in
X-Robots-Tag” (bản dịch) «Noindex detected trong X-Robots-Tag» message trong Search Console: một CDN hoặc edge config serving an
X-Robots-Tag: noindex — ngay cả briefly hoặc by mistake — nhận logged by Google as một
noindex tín hiệu và có thể deindex các trang bạn không bao giờ meant để touch. Đó lesson: luôn
curl -I đó công khai URL behind đó CDN, không chỉ origin, và treat edge rules
với đó giống nhau care as origin config.
Other engines
Bing hỗ trợ đó X-Robots-Tag header và broadly đó giống nhau cốt lõi directives —
noindex, nofollow, noarchive/nocache (Bing dùng nocache as một synonym cho
noarchive), nosnippet, và đó preview-limit directives. Nếu bạn cần Bing
chính xác supported list, xác nhận điều này on Bing trực tiếp help trang — của họ tài liệu là
JavaScript-được kết xuất và worth eyeballing trực tiếp trước relying on một cụ thể
directive.
Nơi này sits
Đó X-Robots-Tag là đó non-HTML half of on-trang lập chỉ mục control: đó robots meta tag cho các trang, này header cho mọi thứ khác. Điều này leans on đó giống nhau noindex, nosnippet / max-snippet / max-image-preview vocabulary, và điều này phụ thuộc vào crawling đang được phép — mà ties điều này straight lại để robots.txt và đó rộng hơn lập chỉ mục story. Nếu bạn nghĩ ra ở đây từ đó crawling side, đó takeaway là đó caveat; nếu bạn nghĩ ra từ đó meta-tag side, đó takeaway là đó giống nhau directives reach PDFs và media qua đó header.
AI summary
MỘT condensed take on đó Advanced version:
- Điều gì điều này là: đó X-Robots-Tag là đó HTTP header phản hồi version of đó
robots meta tag — “Any rule that can be used in a robots
metatag can also be specified as anX-Robots-Tag.” (bản dịch) «Bất kỳ rule đó có thể là dùng trong một robots tag có thể cũng là specified as an .» Giống nhau directives, khác nhau phân phối — cho Google cụ thể; Google itself notes other các công cụ tìm kiếm có thể không treat đó rules cùng cách. - Vì sao điều này tồn tại: non-HTML files (PDFs, images, videos) có không
<head>, so đó header là đó supported way để noindex them — “use theX-Robots-Tagresponse header instead.” (bản dịch) «dùng đó header phản hồi thay vì.» Requires đó tài nguyên để stay crawlable, không chỉ đó header set. - Directives: đó đầy đủ meta-tag vocabulary —
noindex,nofollow,none,all,nosnippet,max-snippet,max-image-preview,max-video-preview,noarchive,noimageindex,notranslate,indexifembedded,unavailable_after. - Multiple rules: combine directives trong một comma-separated list hoặc repeated header lines; Google resolves conflicts by applying đó hơn restrictive rule.
- Set điều này máy chủ-side: Apache
<FilesMatch>+mod_headers, Nginxadd_header, hoặc một Cloudflare Transform Rule / Worker — một rule theo file loại. Treat mỗi snippet as environment-cụ thể (inheritance, các chuyển hướng, status codes, và CDN/app layers có thể all thay đổi điều gì là thực ra delivered) — cho ví dụ, Nginx dừng inheriting một parentadd_headerkhi một childlocationblock sets của nó own. - Theo-crawler:
X-Robots-Tag: googlebot: noindex; không người dùng-agent token = all các crawler; names/các giá trị là case-insensitive. - Đó #1 mistake: blocking đó file trong robots.txt hides đó header, so đó
noindex là “not found and… therefore ignored.” (bản dịch) «không tìm thấy và… do đó đã bỏ qua.» Để deindex: cho phép crawling +
serve
noindex. - Verify:
curl -Iđó công khai URL as một fast kiểm tra, nhưng xác nhận on một real GET yêu cầu cũng (-IgửiHEAD, mà có thể miss GET-chỉ rules); spoof với-A "Googlebot"; watch cho CDN-so với-origin drift (đó “Noindex detected in X-Robots-Tag” (bản dịch) «Noindex detected trong X-Robots-Tag» GSC failure). - Bing: hỗ trợ điều này cũng, với
nocache≈noarchive(xác nhận đó trực tiếp list).
Tài liệu chính thức
Chính-nguồn tài liệu cho đó X-Robots-Tag và đó lập chỉ mục rules điều này carries.
- Robots meta tag, dữ liệu-nosnippet, và X-Robots-Tag các đặc tả — đó canonical spec: đó X-Robots-Tag section, đó đầy đủ directive bảng, theo-crawler targeting, và đó crawl-phải-là-được phép caveat.
- Block Tìm kiếm Lập chỉ mục với noindex — đó hai ways để implement
noindex(meta tag và HTTP header) và đó crawlability dependency. - Introduction để robots.txt — điều gì robots.txt làm (controls crawling, không lập chỉ mục) — đó other half of vì sao một block hides đó header.
Bing / Microsoft
- Robots meta tags và các thuộc tính đó Bing hỗ trợ — Bing supported directives, including
nocache(≈noarchive). Đó trang là JavaScript-được kết xuất; xác nhận đó chính xác list trong một trình duyệt. (URL đã cập nhật 2026-07-18 — Bing 301-được chuyển hướng đó old slug ở đây.)
Quotes từ đó nguồn
On-đó-record statements từ Google tài liệu. Mỗi link là một deep link đó jumps để đó quoted passage on đó trang nguồn.
Google — điều gì đó X-Robots-Tag là
- “The
X-Robots-Tagcan be used as an element of the HTTP header response for a given URL. Any rule that can be used in a robotsmetatag can also be specified as anX-Robots-Tag.” (bản dịch) «Đó có thể là dùng as an element of đó HTTP header phản hồi cho một được cho URL. Bất kỳ rule đó có thể là dùng trong một robots tag có thể cũng là specified as an .» — Google Search Central tài liệu. Nhảy đến trích dẫn
Google — vì sao điều này tồn tại (non-HTML files)
- “To block indexing of non-HTML resources, such as PDF files, video files, or image files, use the
X-Robots-Tagresponse header instead.” (bản dịch) «Để block lập chỉ mục of non-HTML các tài nguyên, such as PDF files, video files, hoặc image files, dùng đó header phản hồi thay vì.» Nhảy đến trích dẫn
Google — theo-crawler targeting
- “may optionally specify a user agent before the rules” (bản dịch) «có thể tùy chọn specify một người dùng agent trước đó rules» Nhảy đến trích dẫn
- “Rules specified without a user agent are valid for all crawlers. The HTTP header, the user agent name, and the specified values are not case sensitive.” (bản dịch) «Rules specified không có một người dùng agent là hợp lệ cho all các crawler. Đó HTTP header, người dùng agent name, và đó specified các giá trị không phải case sensitive.» Nhảy đến trích dẫn
Google — đó crawl-phải-là-được phép caveat (đó spine)
- “…robots meta tags and X-Robots-Tag HTTP headers are discovered when a URL is crawled. If a page is disallowed from crawling through the robots.txt file, then any information about indexing or serving rules will not be found and will therefore be ignored.” (bản dịch) «…robots meta tags và X-Robots-Tag HTTP các header là discovered khi một URL là được crawl. Nếu một trang là disallowed từ crawling qua đó robots.txt file, thì bất kỳ information về lập chỉ mục hoặc serving rules sẽ không là được tìm thấy và sẽ do đó là đã bỏ qua.» Nhảy đến trích dẫn
- “For the
noindexrule to be effective, the page or resource must not be blocked by a robots.txt file, and it has to be otherwise accessible to the crawler. If the page is blocked by a robots.txt file or the crawler can’t access the page, the crawler will never see thenoindexrule, and the page can still appear in search results, for example if other pages link to it.” (bản dịch) «Cho đó rule để là effective, đó trang hoặc tài nguyên không được là blocked by một robots.txt file, và điều này có để là nếu không accessible để đó crawler. Nếu đó trang là blocked by một robots.txt file hoặc đó crawler không thể access đó trang, đó crawler sẽ không bao giờ see đó rule, và đó trang có thể vẫn xuất hiện trong kết quả tìm kiếm, ví dụ nếu other các trang link để điều này.» — Google Search Central tài liệu. Nhảy đến trích dẫn
Google — hai ways để implement noindex
- “There are two ways to implement
noindex: as a<meta>tag and as an HTTP response header.” (bản dịch) «Có hai ways để implement : as một thẻ meta tag và as an HTTP header phản hồi.» Nhảy đến trích dẫn
nocache ≈ noarchive synonym) là corroborated qua phụ coverage — xác nhận
điều này so với đó trực tiếp trang trước treating điều này as cuối. John Mueller commentary on
đó robots.txt-block-hides-đó-header chế độ lỗi, và đó “Noindex detected in
X-Robots-Tag” (bản dịch) «Noindex detected trong X-Robots-Tag» CDN incident class, là paraphrased từ ngành coverage ở đây, không
quoted, cho đó giống nhau reason — verify chính xác wording trong một trình duyệt trước quoting. X-Robots-Tag — bảng tra nhanh
Meta tag so với X-Robots-Tag — mà để dùng
| Situation | Dùng | Vì sao |
|---|---|---|
| HTML trang bạn control đó markup of | Robots meta tag | Easiest, theo-trang, lives trong đó <head> |
PDF, image, video, feed (không <head>) | X-Robots-Tag header | Không HTML để put một meta tag trong |
| Toàn bộ file loại hoặc site-wide rule | X-Robots-Tag header | Một máy chủ rule covers them all |
| không thể easily edit mỗi trang HTML | X-Robots-Tag header | Set điều này tại đó máy chủ / CDN layer |
Đó hai controls không overlap — giữ them straight
| Control | Dừng crawling? | Dừng lập chỉ mục? | Dùng điều này cho |
|---|---|---|---|
robots.txt disallow | Có | Không | Giữ bots out of thấp-giá trị spaces |
X-Robots-Tag: noindex | Không (phải được crawlable) | Có | Removing một file từ đó chỉ mục |
Block một file trong robots.txt và thêm X-Robots-Tag: noindex và bạn cancel
yourself out — Google không bao giờ crawl đó file để đọc đó header. Pick một job theo
URL.
Đó “same directives, either delivery method” (bản dịch) «giống nhau directives, either phân phối phương thức» rule trên là Google được ghi lại contract. đây là một reasonable hoạt động assumption cho hầu hết major các crawler (Bing cốt lõi set overlaps), nhưng điều này không một guaranteed cross-engine tiêu chuẩn — verify trực tiếp với bất kỳ crawler/vendor bạn cụ thể phụ thuộc on.
Theo-crawler syntax
| Goal | Header |
|---|---|
| Noindex cho mọi người | X-Robots-Tag: noindex |
| Noindex cho Google chỉ | X-Robots-Tag: googlebot: noindex |
| Khác nhau rules theo bot | X-Robots-Tag: googlebot: noindexX-Robots-Tag: bingbot: nofollow |
| Timed removal | X-Robots-Tag: unavailable_after: 25 Jun 2010 15:00:00 PST |
| Chỉ mục chỉ khi embedded | X-Robots-Tag: noindex, indexifembedded |
Không người dùng-agent token = áp dụng để all các crawler. Header name, người dùng-agent name, và các giá trị là all case-insensitive.
Verification, trong một line
curl -sI https://example.com/file.pdf | grep -i x-robots-tag- Spoof Googlebot:
curl -A "Googlebot" -sI https://example.com/file.pdf - Luôn kiểm tra đó công khai (CDN-fronted) URL, không chỉ origin.
X-Robots-Tag implementation checklist
- Chọn đó phản hồi types và URL patterns đó cần một header-cấp độ directive.
- Giữ affected các tài nguyên crawlable so các crawler có thể đọc đó header.
- Apply directives tại một known layer: origin, application, web máy chủ, CDN, hoặc edge.
- Kiểm thử successful, chuyển hướng, lỗi, được lưu đệm, và uncached các phản hồi riêng.
- Kiểm tra crawler-cụ thể prefixes chỉ khi một real crawler-cụ thể policy là dự kiến.
- Document quyền sở hữu và một rollback trước applying một rộng path hoặc file-loại rule.
Playbook: an X-Robots-Tag rollout ảnh hưởng đó sai URLs
- Pause đó rộng rule hoặc edge deployment.
- Capture các header từ affected và unaffected samples, including bộ nhớ đệm status và các chuyển hướng.
- Identify đó owning layer và chính xác path, MIME-loại, hoặc route match.
- Hẹp đó condition và xóa duplicate directives từ other layers.
- Purge relevant caches, thì retest đó đầy đủ sample matrix.
- Exit khi dự kiến các tài nguyên carry một coherent policy và ordinary các trang không inherit điều này.
Phổ biến X-Robots-Tag các vấn đề
Đó origin gửi đó header nhưng đó công khai URL không
Nguyên nhân: CDN hoặc proxy behavior strips, caches, hoặc overrides điều này. Cách sửa: inspect mỗi hop và configure đó công khai edge phản hồi as đó nguồn of truth.
noindex không bao giờ takes effect
Nguyên nhân: robots.txt chặn đó tài nguyên, so đó crawler không thể đọc của nó header phản hồi. Cách sửa: cho phép crawling và retain đó noindex phản hồi.
HTML các trang inherit một PDF-chỉ rule
Nguyên nhân: đó máy chủ match là cũng rộng hoặc dùng đó sai MIME/path condition. Cách sửa: hẹp đó rule và kiểm thử multiple file và route types trước redeploying.
Tools cho header-cấp độ robots controls
- HTTP Header Checker — inspect đó trực tiếp công khai X-Robots-Tag phản hồi.
- Robots.txt Tester — xác nhận đó crawler có thể fetch một tài nguyên whose header điều này phải đọc.
- Chuỗi chuyển hướng Mapper — see mà phản hồi trong một chuyển hướng path carries đó directive.
- Staging so với. Production SEO Diff — catch environment-cụ thể header drift trước phát hành.
Validation các kiểm thử
Kiểm thử đó trực tiếp header matrix
Kiểm thử để chạy — yêu cầu representative file types, paths, statuses, và được lưu đệm/uncached các phản hồi với đó HTTP Header Checker hoặc curl -I. Dự kiến kết quả — chỉ dự kiến các phản hồi carry đó chính xác directive. Failure interpretation — một match rule, bộ nhớ đệm, hoặc proxy layer là cũng rộng hoặc inconsistent. Monitoring window — immediate. Rollback trigger — revert nếu indexable HTML hoặc unrelated các tài nguyên inherit noindex.
Kiểm thử crawlability plus noindex
Kiểm thử để chạy — verify robots access và thì fetch đó header phản hồi as đó đích crawler. Dự kiến kết quả — crawling là được phép và X-Robots-Tag: noindex là visible. Failure interpretation — robots rules hoặc crawler-cụ thể header syntax ngăn đó policy từ đang đọc. Monitoring window — immediate technically; chỉ mục removal chờ cho recrawl. Rollback trigger — restore access immediately nếu một rộng robots thay đổi chặn bắt buộc các tài nguyên.
Tự kiểm tra: X-Robots-Tag
Máy chủ config để noindex PDFs
Những là known-good config patterns I’d reach cho — solid starting points, nhưng
xác nhận them so với của bạn own stack (và đó trực tiếp curl -I kiểm tra tại đó bottom)
trước relying on them. They không phải Google quotes.
Apache (.htaccess hoặc vhost — cần mod_headers)
Noindex mỗi PDF:
<FilesMatch "\.pdf$">
Header set X-Robots-Tag "noindex, nofollow"
</FilesMatch>Multiple file types tại khi:
<FilesMatch "\.(pdf|docx?|xlsx?|pptx?)$">
Header set X-Robots-Tag "noindex, noarchive, nosnippet"
</FilesMatch>Notes: Apache cần mod_headers enabled. Header set overwrites bất kỳ existing
giá trị — dùng Header append nếu một sản phẩm khác rule có thể đã set đó header. Để đích
một crawler, put đó token trong đó giá trị: Header set X-Robots-Tag "googlebot: noindex".
Nginx (bên trong một server {} hoặc location block)
Noindex mỗi PDF:
location ~* \.pdf$ {
add_header X-Robots-Tag "noindex, nofollow";
}Multiple types:
location ~* \.(pdf|docx?|xlsx?|pptx?)$ {
add_header X-Robots-Tag "noindex, noarchive, nosnippet";
}Notes: đó directive có để trực tiếp trong an active server/location block, và Nginx
cần một reload (nginx -s reload) để pick điều này lên. Inheritance trap: Nginx chỉ
inherits add_header directives từ một parent block (server {}) vào một child
block (location {}) khi đó child có không add_header of của nó own. Đó
moment một location block adds bất kỳ header — ngay cả an unrelated một, như một CORS hoặc
bộ nhớ đệm-control header — điều này silently dừng inheriting mỗi add_header set trên
điều này, including của bạn X-Robots-Tag. Nếu đó happens, repeat đó X-Robots-Tag
line bên trong đó child block; không assume điều này carried over.
Cloudflare — hai options
Option 1 — Transform Rule (không code). Rules → Transform Rules → Modify Phản hồi
Header → set X-Robots-Tag = noindex, nofollow khi
http.request.uri.path ends với .pdf.
Option 2 — Worker on một route matching *.pdf:
export default {
async fetch(request, env, ctx) {
const res = await fetch(request);
const out = new Response(res.body, res);
out.headers.set("X-Robots-Tag", "noindex, nofollow");
return out;
}
};Either way, một CDN sitting trong front of của bạn origin có thể thêm, strip, hoặc bộ nhớ đệm này header — mà là chính xác vì sao bạn verify so với đó công khai URL dưới, không origin.
Verify đó trực tiếp header với curl
curl -I prints đó các header phản hồi không có downloading đó thân phản hồi. Kiểm tra đó
công khai URL (đó một Google fetches), và tùy chọn spoof đó bot view.
macOS / Linux
# Print all response headers
curl -I https://example.com/file.pdf
# Just the X-Robots-Tag line
curl -sI https://example.com/file.pdf | grep -i x-robots-tag
# See what Googlebot would receive (spoof the user agent)
curl -A "Googlebot" -sI https://example.com/file.pdf | grep -i x-robots-tag
# Confirm on a real GET request too — -I sends HEAD, and a rule scoped to
# GET-only responses won't show up in a HEAD check
curl -sD - -o /dev/null https://example.com/file.pdf | grep -i x-robots-tagWindows (PowerShell)
# Inspect the response headers
(Invoke-WebRequest -Method Head -Uri "https://example.com/file.pdf").Headers["X-Robots-Tag"]
# Spoof the Googlebot user agent
(Invoke-WebRequest -Method Head -Uri "https://example.com/file.pdf" `
-UserAgent "Googlebot").Headers["X-Robots-Tag"]Nếu đó header là bị thiếu, đó hầu hết phổ biến gây ra là: đây là set on origin nhưng
stripped/overridden tại đó CDN; mod_headers không enabled (Apache); đó config
đã không reloaded (Nginx); an Nginx location block redefined add_header và
silently đã dừng inheriting đó parent X-Robots-Tag line; đó rule chỉ
fires on GET và bạn tested với -I (HEAD); hoặc đó file là blocked trong
robots.txt, so Google không bao giờ fetches điều này để see đó header ngay từ đầu.
Nhật ký thay đổi
Đã cập nhật 8 thg 8, 2026.
Tóm tắt biên tập và chi tiết thay đổi đã ghi nhận.Chi tiết thay đổi
-
Ghi chú thay đổi chi tiết hiện chỉ có bằng tiếng Anh.
Không thể so sánh đầy đủ — không có bản lưu trước đó cho lần sửa đổi này.
Đã cập nhật 18 thg 7, 2026.
Tóm tắt biên tập và chi tiết thay đổi đã ghi nhận.Chi tiết thay đổi
-
Ghi chú thay đổi chi tiết hiện chỉ có bằng tiếng Anh.
-
Ghi chú thay đổi chi tiết hiện chỉ có bằng tiếng Anh.
-
Ghi chú thay đổi chi tiết hiện chỉ có bằng tiếng Anh.
-
Ghi chú thay đổi chi tiết hiện chỉ có bằng tiếng Anh.
-
Ghi chú thay đổi chi tiết hiện chỉ có bằng tiếng Anh.
Không thể so sánh đầy đủ — không có bản lưu trước đó cho lần sửa đổi này.