Як запобігти індексуванню файлу PDF пошуковими системами?


27

Я маю посилання на документ PDF на загальнодоступній веб-сторінці. Як я можу запобігти пошуковим системам індексувати це посилання та документ PDF?

Єдина ідея, про яку я думав - це використовувати CAPTCHA. Однак мені цікаво, чи є якісь магічні слова, які підказують пошуковій системі не індексувати посилання та документ PDF? Параметри, що використовують PHP або JavaScript, також чудові.

Просто, щоб було зрозуміло. Я не хочу шифрувати PDF та захищати його паролем. Я просто хочу зробити його невидимим для пошукових систем, але не для користувачів.

Відповіді:


32

Для того, щоб ваш файл PDF (або будь-який не HTML-файл) не відображався в результатах пошуку, єдиним способом є використання X-Robots-Tagзаголовка відповіді HTTP , наприклад:

X-Robots-Tag: noindex

Для цього можна додати наступний фрагмент до кореневого файлу .htaccess або файл httpd.conf:

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

Зауважте, що для роботи вище, ви повинні мати змогу змінити заголовки HTTP відповідного файлу. Таким чином, ви, можливо, не зможете цього зробити, наприклад, на сторінках GitHub .

Також зверніть увагу , що robots.txt ніяк НЕ запобігти сторінку від бути перераховані в результатах пошуку.

Це не дозволяє боту сканувати вашу сторінку, але якщо стороння сторона посилається на ваш PDF-файл із свого веб-сайту, ваша сторінка все одно буде перерахована.

Якщо ви зупините бот від сканування вашої сторінки за допомогою robots.txt , він не матиме можливості побачити X-Robots-Tag: noindexтег відповідей. Тому ніколи не забороняйте сторінку в robots.txt, якщо ви використовуєте X-Robots-Tagзаголовок. Більше інформації можна знайти в розробниках Google: метатег роботів .


Я не слідкую за тим, як robots.txt із записом для сторінки не дозволить поважати / виконувати тег X-Robots-Tag, якщо в майбутньому буде запропоновано тегу X-Robots-Tag.
Дон Чейдл

1
Я думав, що коли запитується сторінка, вона ("Google") побачить заголовок X-Robots-Tag, а потім знає, що не її індексувати ... але схоже, що X-Robots-Tag корисний лише для сканерів які потім знають не індексувати це developers.google.com/webmasters/control-crawl-index/docs/…
Дон Чейдл,

Оскільки ви використовуєте Filesдирективу з увімкненим регулярним вираженням , вам слід замість FilesMatchцього використати, як тут пропонується stackoverflow.com/q/14792381/1262357
Gruber

15

Існує кілька способів зробити це (поєднання їх, очевидно, є вірним способом цього досягти):

1) Використовуйте robots.txt для блокування файлів із пошукових систем:

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

2) Використовуйте rel="nofollow"посилання на ці PDF-файли

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

3) Використовуйте x-robots-tag: noindexзаголовок HTTP, щоб запобігти індексації сканерів. Помістіть цей код у свій .htaccess файл:

<FilesMatch "\.pdf$">
  header set x-robots-tag: noindex
</FilesMatch>

2
Протиінтуїтивно, використання обох x-robots-tagі robots.txtодночасно не є хорошою ідеєю і може спричинити індексацію вмісту в будь-якому випадку. Якщо ви використовуєте robots.txtі те x-robots-tag: noindex, і сканер ніколи не сканує або не бачить, x-robots-tagтому що спочатку вшановує robots.txt. robots.txtне заважає індексувати ресурси, а лише сканувати, тому найкращим рішенням є використання x-robots-tagзаголовка, але дозволяти пошуковим системам сканувати та знаходити цей заголовок, залишаючи вас у robots.txtспокої.
Максиміліан Ламестер

1

Ви можете використовувати файл robots.txt . Більше ви можете прочитати тут .


3
Використання robots.txt не перешкоджає індексуванню . Це лише запобігає повзання . Див. Відповідь Пейсер'є для правильного рішення.
токсалот

1

Не впевнений, чи може цей підвіконня комусь принести певну цінність, але нещодавно ми стикалися з проблемою того, що наш передбачуваний блок GSA не бажає індексувати PDF-файл.

Служба підтримки Google працювала з проблемою, і їх відповідь полягає в тому, що це пов’язано з тим, що цей документ PDF має спеціальний набір властивостей (Файл -> Властивості документа -> Спеціальний (вкладка))

name: robots
value: noindex

що заважало їй правильно індексуватися GSA.

Якщо у вас є доступ до документа і ви можете змінити його властивості, це може спрацювати ... в оренді для GSA.


1

Якщо в результатах пошуку Google відображаються екземпляри розробки з використанням nginx, існує швидкий і простий спосіб запобігти скануванню пошукових систем на ваш сайт. Додайте наступний рядок до блоку локації вашого файлу конфігурації virtualhost для блоку, який ви хочете запобігти скануванню.

add_header  X-Robots-Tag "noindex, nofollow, nosnippet, noarchive";

-2

Ви можете використовувати файл robots.txt. Пошукові системи, які шанують цей файл, не індексують PDF. Просто використовуйте команду для заборони індексації файлу та позначте, яку папку чи файл PDF ви не бажаєте, щоб пошукові системи індексували.


4
Використання robots.txt не заважає індексуванню . Це лише запобігає повзання . Див. Відповідь Пейсер'є для правильного рішення. Нещодавно я читав про використання директиви noindex (а не заборонити) всередині файлу robots.txt, але це недокументоване і нестандартне. І тепер я не можу знайти, де я це прочитав.
токсалот

У нас є запитання щодо цього: Як працює "Noindex:" в robots.txt?
Стівен Остерміллер
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.