Como impedir que um arquivo PDF seja indexado pelos mecanismos de pesquisa?

27

Eu tenho um link para documento PDF em uma página da web pública. Como evito que os mecanismos de pesquisa indexem esse link e esse documento em PDF?

A única idéia em que pensei é usar o CAPTCHA. No entanto, gostaria de saber se existem palavras mágicas que indiquem um mecanismo de pesquisa para não indexar o link e o documento PDF? Opções usando PHP ou JavaScript também são boas.

Apenas para deixar claro. Não quero criptografar PDF e protegê-lo com senha. Eu só quero torná-lo invisível para os mecanismos de pesquisa, mas não para os usuários.

unor
fonte

Respostas:

32

Para impedir que seu arquivo PDF (ou qualquer arquivo não HTML) seja listado nos resultados da pesquisa, a única maneira é usar o X-Robots-Tagcabeçalho de resposta HTTP , por exemplo:

X-Robots-Tag: noindex

Você pode fazer isso adicionando o seguinte trecho ao arquivo .htaccess raiz do site ou ao arquivo httpd.conf:

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

Observe que, para que o procedimento acima funcione, você deve poder modificar os cabeçalhos HTTP do arquivo em questão. Portanto, talvez você não consiga fazer isso, por exemplo, nas páginas do GitHub .

Observe também que robots.txt que não evitar sua página sejam listados nos resultados da pesquisa.

O que ele faz é parar o bot de rastejar sua página, mas se um terceiro ligações do partido para seu arquivo PDF a partir de seu site, sua página ainda serão listados.

Se você impedir que o bot rastreie sua página usando o robots.txt , ele não terá a chance de ver a X-Robots-Tag: noindextag de resposta. Portanto, nunca desaprove nunca uma página no robots.txt se você empregar o X-Robots-Tagcabeçalho. Mais informações podem ser encontradas no Google Developers: Robots Meta Tag .

Pacerier
fonte
Não sigo como o robots.txt com uma entrada para a página impediria que a X-Robots-Tag fosse respeitada / obedecida se a página com essa X-Robots-Tag fosse solicitada no futuro.
Don Cheadle
11
Eu pensei que quando a página fosse solicitada, ("Google") veria o cabeçalho X-Robots-Tag e saberia não indexá-lo ... mas parece que o X-Robots-Tag é útil apenas para rastreadores que então sabe não indexá-lo developers.google.com/webmasters/control-crawl-index/docs/…
Don Cheadle
Como você está usando a Filesdiretiva habilitada para regex , considere usá-la FilesMatch, como sugerido aqui stackoverflow.com/q/14792381/1262357
Gruber
15

Existem várias maneiras de fazer isso (combiná-las é obviamente uma maneira certa de fazer isso):

1) Use o robots.txt para bloquear os arquivos dos rastreadores dos mecanismos de pesquisa:

User-agent: *
Disallow: /pdfs/ # Block the /pdfs/directory.
Disallow: *.pdf  # Block pdf files. Non-standard but works for major search engines.

2) Use rel="nofollow"nos links para esses PDFs

<a href="something.pdf" rel="nofollow">Download PDF</a>

3) Use o x-robots-tag: noindexcabeçalho HTTP para impedir que os rastreadores os indexem. Coloque este código no seu arquivo .htaccess :

<FilesMatch "\.pdf$">
  header set x-robots-tag: noindex
</FilesMatch>
John Conde
fonte
2
Por outro lado, usar os dois x-robots-tage robots.txtao mesmo tempo não é uma boa ideia e pode fazer com que o conteúdo seja indexado de qualquer maneira. Se você usar os dois robots.txte x-robots-tag: noindex, o rastreador nunca rastreará ou verá o arquivo x-robots-tagporque ele primeiro honra o robots.txt. robots.txtnão impede que os recursos sejam indexados, apenas sejam rastreados; portanto, a melhor solução é usar o x-robots-tagcabeçalho, mas permitir que os mecanismos de pesquisa rastreiem e localizem esse cabeçalho deixando-o robots.txtsozinho.
Maximillian Laumeister
1

Você pode usar o arquivo robots.txt . Você pode ler mais aqui .

enoyhs
fonte
3
O uso do robots.txt não impede a indexação . Apenas impede o rastreamento . Consulte a resposta do Pacerier para obter a solução correta.
toxalot
1

Não tenho certeza se esse peitoril pode trazer algum valor para alguém, mas recentemente encontramos um problema que nossa caixa GSA local não está disposta a indexar arquivo PDF.

O Suporte do Google trabalhou com o problema e sua resposta é que ele está relacionado ao fato de este documento PDF ter um conjunto de propriedades personalizadas (Arquivo -> Propriedades do documento -> Personalizado (guia))

name: robots
value: noindex

o que impediu que fosse corretamente indexado pelo GSA.

Se você tiver acesso ao documento e puder modificar suas propriedades, isso poderá funcionar ... na concessão do GSA.

ChiTec
fonte
1

Se você estiver exibindo instâncias de desenvolvimento com nginx nos resultados de pesquisa do Google, existe uma maneira rápida e fácil de impedir que os mecanismos de pesquisa rastreiem seu site. Adicione a seguinte linha ao bloco de localização do seu arquivo de configuração do host virtual para o bloco que você deseja impedir o rastreamento.

add_header  X-Robots-Tag "noindex, nofollow, nosnippet, noarchive";
James M
fonte
-2

Você pode usar um arquivo robots.txt. Os mecanismos de pesquisa que respeitam esse arquivo não indexam o PDF. Basta usar o comando para impedir a indexação de um arquivo e designar qual pasta ou arquivo PDF você não deseja que os mecanismos de pesquisa indexem.

Rudolf Olah
fonte
4
O uso do robots.txt não impede a indexação . Apenas impede o rastreamento . Consulte a resposta do Pacerier para obter a solução correta. Li recentemente sobre o uso de uma diretiva noindex (em vez de não permitir) dentro do arquivo robots.txt, mas não é documentado e não é padrão. E agora não consigo encontrar onde li.
toxalot
Temos uma pergunta: como funciona o "Noindex:" no robots.txt?
Stephen Ostermiller