Bir PDF dosyasının arama motorları tarafından dizine eklenmesini nasıl önleyebilirim?


27

Genel bir web sayfasındaki PDF belgesine bir bağlantım var. Arama motorlarının bu bağlantıyı ve PDF belgesini endekslemesini nasıl önlerim?

Düşündüğüm tek fikir CAPTCHA'yı kullanmak. Ancak, bir arama motoruna bağlantıyı ve PDF belgesini dizine eklememesini söyleyen herhangi bir sihirli kelime olup olmadığını merak ediyorum. PHP veya JavaScript kullanan seçenekler de iyidir.

Sadece netleştirmek için. PDF'yi şifrelemek ve şifre ile korumak istemiyorum. Sadece arama motorları için görünmez yapmak istiyorum, fakat kullanıcılar için değil.

Yanıtlar:


32

PDF dosyanızın (veya HTML olmayan herhangi bir dosyanın) arama sonuçlarında listelenmesini önlemek için tek yol HTTP X-Robots-Tagyanıt başlığını kullanmaktır , örneğin:

X-Robots-Tag: noindex

Bunu, sitenin kök .htaccess dosyasına veya httpd.conf dosyasına aşağıdaki snippet'i ekleyerek yapabilirsiniz:

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

Yukarıdakilerin çalışması için söz konusu dosyanın HTTP başlıklarını değiştirebilmeniz gerektiğini unutmayın. Böylece, örneğin GitHub Sayfalarında bunu yapamayabilirsiniz .

Ayrıca unutmayınız robots.txt gelmez değil arama sonuçlarında yer almasının sayfanızı engeller.

Yaptığı şey botun sayfanızı taramasını engellemek, ancak üçüncü bir taraf kendi web sitesinden PDF dosyanızı bağlarsa, sayfanız yine de listelenecek.

Botun robots.txt kullanarak sayfanızı taramasını engellerseniz , X-Robots-Tag: noindexyanıt etiketini görme şansınız olmaz . Bu nedenle, başlığı kullanıyorsanız , hiçbir zaman robots.txt dosyasındaki bir sayfaya asla izin X-Robots-Tagvermeyin. Daha fazla bilgi Google Geliştiriciler'de bulunabilir: Robots Meta Tag .


Sayfa girişi olan robots.txt dosyasının, gelecekte X-Robots-Tag etiketli bir sayfa talep edildiğinde X-Robots-Tag'e nasıl saygı gösterileceğini / uyulmasını önleyeceğini takip etmiyorum.
Don Cheadle,

1
Sayfa istendiğinde, ("Google") X-Robots-Tag başlığını göreceğini ve daha sonra dizine eklemeyi bilmediğini sanıyordum ... ama X-Robots-Tag sadece tarayıcılar için yararlı görünüyor o zaman endeks yapmamayı bildiği için developers.google.com/webmasters/control-crawl-index/docs/…
Don Cheadle

Regex etkin Filesyönergeyi kullandığınızdan, bunun FilesMatchyerine, burada önerildiği gibi kullanmayı düşünmelisiniz. Stackoverflow.com/q/14792381/1262357
Gruber

14

Bunu yapmanın birden çok yolu vardır (bunları birleştirmek kesinlikle bunu başarmanın kesin bir yoludur):

1) Arama motorlarındaki tarayıcılardan gelen dosyaları engellemek için robots.txt dosyasını kullanın :

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

2) rel="nofollow"Bu PDF'lerin bağlantılarında kullanın

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

3) x-robots-tag: noindexTarayıcıların endekslemesini önlemek için HTTP başlığını kullanın . Bu kodu .htaccess dosyanıza yerleştirin:

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

2
Sezgilere ikisini de kullanarak x-robots-tagve robots.txtaynı zamanda iyi bir fikir değildir ve içerik zaten endeksli neden olabilir. Her iki kullanırsanız robots.txtve x-robots-tag: noindex, paletli taramasını veya görmek asla x-robots-tagilk onur çünkü robots.txt. robots.txtkaynakların endekslenmesini engellemez, yalnızca taranmasını önler, bu nedenle en iyi çözüm x-robots-tagbaşlığı kullanmaktır , ancak arama motorlarını taramanızı ve bu başlığı robots.txtyalnız bırakarak bulmasını sağlar .
Maximillian Laumeister


1

Bu eşiğin herkese bir değer getirip getirmediğinden emin değiliz, ancak yakın zamanda şirket içi GSA kutumuzun PDF dosyasını endekslemek istememesiyle ilgili bir sorunla karşılaştık.

Google Desteği sorunla çalıştı ve yanıtları, bu PDF belgesinin özel bir özellik ayarına sahip olmasıyla ilgili olduğu (Dosya -> Belge Özellikleri -> Özel (sekme))

name: robots
value: noindex

bu da GSA tarafından uygun şekilde indekslenmesini önledi.

Belgeye erişiminiz varsa ve özelliklerini değiştirebiliyorsanız, GSA için kiralanabilir.


1

Nginx destekli geliştirme örnekleri Google arama sonuçlarında görünüyorsa, arama motorlarının sitenizi taramasını engellemenin hızlı ve kolay bir yolu vardır. Aşağıdaki satırı, gezinmeyi önlemek istediğiniz blok için sanal ana bilgisayar yapılandırma dosyanızın konum bloğuna ekleyin.

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

-2

Bir robots.txt dosyası kullanabilirsiniz. Arama motorları bu onur dosyası olacak o değil endeksi PDF. Sadece bir dosyanın endekslenmesine izin vermemek için komutu kullanın ve arama motorlarının indekslemesini istemediğiniz klasörü veya PDF dosyasını belirtin.


4
Robots.txt kullanmak indekslemeyi engellemez . Sadece sürünmeyi önler . Doğru çözüm için Pacerier'in cevabına bakınız . Son zamanlarda robots.txt dosyasında noindex yönergesi (izin verme yerine) kullanmak hakkında okudum, ancak belgelenmemiş ve standart değil. Ve şimdi nerede okuduğumu bulamıyorum.
toxalot

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.