Bagaimana menyembunyikan XML Sitemap saya dari pesaing tetapi tidak dari mesin pencari

10

Saya ingin menyembunyikan file XML sitemap saya dari semua tetapi mengizinkan akses dari mesin pencari.

Apa cara untuk melakukannya?

Saya ingin menyembunyikan kedalaman konten situs dari pesaing.

AGA
sumber
1
Jika situs dan halaman-halamannya tidak dilindungi oleh pengguna dan kata sandi, semua orang dapat menjelajahinya, mereka hanya harus mengikuti tautan di situs Anda sendiri.
PatomaS
Saya dapat memeriksa IP bot Google dan mengizinkan dan menolak untuk yang lain. Meskipun kami tidak bisa mendapatkan daftar IP lengkap Googlebot.
AgA

Jawaban:

8

Langkah pertama adalah mendeteksi Agen-Pengguna dari bot yang ingin Anda izinkan , dan menyajikan file yang berbeda jika bukan Agen-Pengguna yang ingin Anda izinkan.

Misalnya, Anda dapat memiliki dua versi robots.txt, satu dengan dan satu tanpa referensi peta situs, sehingga pesaing Anda tidak akan menemukan peta situs jika mereka melihat ke dalam peta Anda robots.txt.

Kemudian, Anda bisa mendeteksi kunjungan ke URL sitemap Anda dan hanya melayani peta situs ketika UA benar. Jika Anda melayani halaman 404 umum sebaliknya, pesaing Anda mungkin bahkan tidak tahu peta situs Anda ada.

Namun, semua langkah yang dijelaskan sampai saat ini hanyalah keamanan melalui ketidakjelasan. Agen-Pengguna dapat dengan mudah dipalsukan.

Karenanya, Google menyarankan agar, untuk mendeteksi GoogleBot yang asli, Anda:

  1. Lakukan pencarian DNS terbalik untuk alamat IP yang mengklaim sebagai GoogleBot.
  2. Periksa apakah host adalah sub-domain dari googlebot.com..
  3. Lakukan pencarian DNS normal untuk sub-domain.
  4. Periksa apakah sub-domain menunjuk ke alamat IP bot yang merayapi situs Anda.

Singkatnya:

Diagram alir (kapan akan menampilkan peta situs)

Microsoft menyarankan untuk menggunakan prosedur yang sama untuk mendeteksi perayap mereka.

Trik ini berfungsi untuk Yahoo! demikian juga.

Untuk DuckDuckGo, Anda dapat menggunakan daftar alamat IP ini

Catatan

Anda tidak perlu menggunakan kesalahan 404 jika Anda menggunakan deteksi laba-laba berbasis pencarian DNS.

Tujuan menggunakan halaman kesalahan 404 adalah untuk menyembunyikan bahwa sitemap Anda ada sama sekali. Namun, jika Anda menggunakan teknik yang lebih canggih yang tidak hanya bergantung pada User-Agenttajuk, tidak mungkin untuk mengelak sehingga Anda dapat dengan aman menggunakan kode kesalahan yang berbeda, seperti 403 Forbiddenkode kesalahan yang benar untuk digunakan di sini.

pengguna2428118
sumber
6

Masalahnya adalah jika Anda (cukup benar) ingin konten Anda diindeks oleh mesin pencari, siapa pun yang melakukan suatu situs: pencarian di salah satu mesin pencari akan dapat melihat URL apa yang diindeks.

Jika Anda ingin "menyembunyikan" peta situs Anda, Anda bisa memilikinya di URL dengan nama "rahasia" sehingga tidak jelas bagi siapa pun yang mungkin mencarinya, tetapi mengingat praktik terbaik untuk menyertakan peta situs dalam robots.txt mengarsipkan dan mengunggahnya ke salah satu profil alat webmaster mesin pencari, seperti yang dikatakan orang lain, sulit untuk mengetahui mengapa Anda perlu melakukan ini.

pengguna3336644
sumber
Dalam hal Alat Webmaster Google / Search Console, Anda bahkan tidak perlu mengunggahnya. Anda bisa menambahkan url sitemap tersembunyi satu kali dan akan terus menggunakannya.
Devabc
4

Solusi licik adalah untuk menghasilkan dua peta situs. Yang pertama adalah untuk kepentingan pesaing Anda yang kedua adalah untuk kepentingan mesin pencari pilihan Anda. Dalam bahasa militer, sitemap pertama ini adalah tipuan.

'Tipuan' berisi struktur situs web dasar Anda, beranda, hubungi kami, tentang kami, kategori utama. Ini terlihat seperti real deal dan akan bekerja sangat baik di mesin pencari yang tidak Anda sukai. Ini juga tidak akan berguna bagi pesaing Anda. Biarkan diindeks agar mereka menemukannya, berikan nama yang jelas seperti sitemap.xml.

Sekarang buat sitemap asli Anda dengan kode. Beri nama seperti 'produk-informasi-sitemap.xml' sehingga itu adalah nama yang masuk akal tetapi sebenarnya tidak lebih mudah ditebak daripada kata sandi Anda.

Dalam konfigurasi apache Anda untuk folder sitemap, letakkan sesuatu di tempat sehingga sitemap kedua ini dapat diakses oleh mesin pencari tetapi tidak diindeks:

<IfModule mod_rewrite.c>
    <Files product-information-sitemap.xml>
        Header set X-Robots-Tag "noindex"
    </Files>
</IfModule>

Sekarang buat kode untuk tetap diperbarui, pertimbangkan sitemap ketiga untuk gambar. Dowwngrade seperti yang diminta untuk membuat 'tipuan'. Perhatikan juga perangko waktu, Google memperhatikannya dan ini penting jika sitemap Anda besar.

Sekarang buat pekerjaan 'cron' untuk mengirimkan sitemap produk Anda ke Google secara teratur. Di entri crontab Anda, tambahkan sesuatu seperti ini untuk mengirimkan peta situs asli Anda setiap minggu:

0 0 * * 0 wget www.google.com/webmasters/tools/ping?sitemap=http%3A%2F%2Fwww.example.com%2Fsitemaps%2Fproduct-information-sitemap.xml

Perhatikan bahwa URL dikodekan URL.

Anda juga dapat gzip sitemap Anda jika ukurannya bermasalah meskipun server web Anda harus melayani gzip itu jika Anda mengaktifkannya.

Robots.txt Anda tidak harus menjadi sesuatu yang istimewa, asalkan tidak menghalangi masuk ke peta situs Anda, itu akan baik-baik saja. Benar-benar tidak perlu mengirim file robots.txt yang berbeda berdasarkan string agen pengguna atau sesuatu yang sangat rumit. Cukup tarik konten berharga Anda ke file tambahan yang tidak diiklankan dan kirimkan ke Google menggunakan tugas cron (daripada menunggu bot). Sederhana.

Theodores
sumber
0

Saya tidak mengerti mengapa struktur situs dapat menyebabkan Anda mengalami masalah dengan pesaing?

Inti dari sitemap adalah membuat halaman diindeks, sehingga orang dapat menemukannya dengan lebih mudah, yang pada akhirnya, harus mengungkapkan bagaimana situs Anda diatur seperti:

  • /news/ berisi Artikel berita Anda
  • /forum/ adalah tempat semua diskusi forum

Itu akan diindeks, untuk mendapatkan lebih banyak lalu lintas dan menyajikan informasi.

Seperti folder yang tidak ingin Anda indeks

  • Kelas dan fungsi PHP yang memungkinkan situs bekerja
  • Gambar situs, CSS, folder JavaScript
  • Panel Administrasi

Lalu, jika itu masalahnya, maka itu seharusnya tidak ada di sitemap Anda sama sekali. Plus Anda dapat mengecualikan mereka dari pengindeksan juga.

Zistoloen
sumber
0

Jika Anda memiliki alamat IP bot yang ingin Anda izinkan:

<Limit GET POST PUT>
order deny,allow
deny from all
allow from 192.168.1.1 # IP 1
allow from 192.168.1.2 # IP 3
allow from 192.168.1.3 # IP 2
</LIMIT>

Jika Anda menginginkannya berdasarkan string agen pengguna:

Order Allow,Deny
allow from env=good_bot_1
allow from env=good_bot_2
Martijn
sumber
Daftar alamat IP lengkap Google, Bing adalah rahasia. Mereka tidak akan membocorkan hal ini kepada dunia karena berisiko besar terselubung oleh situs web.
AgA
Dan itulah mengapa saya telah menambahkan kemungkinan ke-2 :) Nama jauh lebih mudah, tetapi ingin memberikan jawaban lengkap
Martijn
0

Salah satu cara Anda dapat mencoba: Dalam sesi perayapan yang biasa, Google bot mengakses robots.txt dan kemudian pergi ke file sitemap. Dorong cookie untuk semua porsi robots.txt dan izinkan akses ke peta situs hanya untuk orang-orang dengan cookie. Akan ada masalah ketika bot Google tidak menerima cookie. Begitu juga sebaliknya. Dorong cookie ketika pengguna mengakses halaman selain robots.txt dan menolak akses ke sitemap bagi mereka yang memiliki cookie. Juga, berikan nama acak ke sitemap Anda, sesuatu yang berubah seiring waktu dan membuatnya tidak bisa ditebak. Jika pesaing Anda mengaktifkan cookie di browser mereka, akan sangat sulit bagi mereka untuk mengakses sitemap kecuali mereka mengikuti jalur yang tepat diikuti oleh mesin pencari.

Rana Prathap
sumber
0

Saya membuat asumsi bahwa saya memahami kebutuhan Anda dengan benar sehingga saya menunjukkan keberanian untuk menjawab.

berikan tautan gambar ke peta situs Anda tepat sebelum </html>tag Anda . Gunakan file gif 1px transparan:

<a href="sitemap.xml"><img src="transparent.gif" alt="" height="1" width="1" /></a>

Di halaman yang memiliki tautan sitemap Anda, setel metatag terkait Anda:

<meta name="robots" content="{index or noindex},follow">

periksa keadaan visual ketika Anda menekan Ctrl+ Auntuk memilih semua halaman. Apakah tautan 1px terlihat, berisiko untuk Anda?

Jika Anda menjawab ya, mungkin opsi lain adalah:

  1. buat tautan ke peta situs Anda: <a href="sitemap.xml">&nbsp;</a>
  2. ubah warna font sama dengan warna latar
  3. Menggunakan teknik CSS, sembunyikan tautan ini di belakang gambar

Dengan cara ini pengguna normal yang tidak sadar tidak akan melihat tautan Anda. Mesin pencari akan menyadarinya. Namun harap diperhatikan bahwa sifat alami pertanyaan Anda melibatkan ketidakmungkinan.

Saya katakan tidak mungkin karena jika pengguna mencari di Google misalnya dengan istilah ini

* site:www.yoursite.com

seluruh dunia dapat melihat semua tautan Anda jika mereka tidak lelah mengklik nexttautan.

Saya harap ini membantu.

Andre Chenier
sumber
Mengapa ini menghentikan pengguna menemukan / mengakses sitemap XML ketika Anda biasanya tidak akan menautkan ke sitemap XML Anda?
MrWhite
Saya bertanya Q yang sama untuk diri saya sendiri, tetapi itulah yang saya tolak dari pemilik pertanyaan. Saya pikir ini adalah persyaratannya entah bagaimana. Saya tidak yakin :-)
Andre Chenier