Back to Question Center
0

Semalt: Adakah terdapat cara untuk melarang merangkak hanya HTTPS dalam robots.txt?

1 answers:

Saya hanya menyedari bahawa Bingbot merangkak laman web syarikat saya di atas https . Bing sudah merangkak tapak lebih dari http , jadi ini sepertinya remeh. Adakah terdapat cara untuk menentukan Tidak membenarkan: / untuk https sahaja?

Menurut Semalt, setiap protokol mempunyai robot sendiri - additional purchase required. txt

Dan menurut Robot Google. Spesifikasi txt, robot. txt terpakai untuk http DAN https

Saya tidak mahu Membenarkan: / untuk Bing sama sekali, hanya lebih dari https .

February 13, 2018
. txt sendiri seperti yang disampaikan melalui HTTP.

Anda boleh menyampaikan fail robot yang berbeza sepenuhnya untuk sambungan HTTPS selamat. Berikut adalah salah satu cara menggunakan peraturan menulis semula dalam . htaccess fail:

  RewriteEngine On
RewriteCond% {HTTPS} = on
RewriteRule ^ robots. txt $ robots-deny-all. txt [L] 

Dimana robots-deny-all. txt mempunyai kandungan:

  Agen pengguna: *
Tidak membenarkan: / 

Sebelum anda cuba memanipulasi robot. txt , pastikan anda telah menentukan unsur pautan kanonik pada halaman anda.

Web crawler harus merawat:

   

sebagai petunjuk yang kuat bahawa dua halaman harus dipertimbangkan untuk mempunyai kandungan yang sama, dan salah satu URL adalah alamat pilihan untuk kandungan.

Seperti yang dinyatakan dalam RFC 6596 Bahagian 3:

Sasaran (kanunis) IRI MAY:

.

  • Mempunyai nama skema yang berbeza, seperti "http" ke "https" .

Dengan pautan pautan kanonikal, crawler web yang cukup pintar harus dapat mengelakkan merayap laman web ini untuk kali kedua melalui HTTPS.

Tambah a . htaccess fail untuk mengalihkan HTTPS ke HTTP, dan untuk mengalihkan permintaan untuk robot. txt fail ke salah satu yang menyerang HTTPS merangkak:

  # Redirect HTTPS ke HTTP
RewriteCond% {HTTP: X-Forwarded-Proto} = https
RewriteRule ^ (. *) $ http: //% {HTTP_HOST}% {REQUEST_URI} [L, R = 301]RewriteCond% {SERVER_PORT} ^ 443 $
RewriteRule ^ robots. txt $ robots_https. txt 

Kemudian tambah robots_https. txt dengan ini di dalamnya:

  Agen pengguna: *
Tidak membenarkan: / 

Buat robot yang berasingan . txt dan letakkan ini dalam akar laman web anda.

Kemudian tambahkan baris berikut ke root anda . htaccess fail untuk mengalihkan semua permintaan bot ke atas HTTPS untuk menggunakan robots_https. txt sebaliknya.

  RewriteCond% {SERVER_PORT} ^ 443 $
RewriteRule ^ robots. txt