Crawling infrastructure

Google robots.txt spesifikasiyasını necə şərh edir

Google-un avtomatlaşdırılmış
skanerləri dəstəkləyir
Robotların İstisna Protokolunu (REP).
Bu o deməkdir ki, Google skanerləri saytı taramazdan əvvəl saytın hansı hissələrinin tarana biləcəyi haqqında məlumat əldə etmək üçün saytın robots.txt faylını endirir və təhlil edir. REP istifadəçilər tərəfindən idarə olunan Google skanerlərinə (məsələn, lent abunəlikləri) və ya istifadəçi təhlükəsizliyini artırmaq üçün istifadə olunan skanerlərə (məsələn, zərərli proqram təhlili) şamil edilmir.

Bu səhifə Google-un REP təfsirini təsvir edir. Orijinal standart üçün baxın
RFC 9309.

Google robots.txt spesifikasiyasını necə şərh edir

robots.txt faylı nədir

Əgər skanerlərin saytınızın bölmələrinə daxil olmasını istəmirsinizsə, müvafiq qaydalarla robots.txt faylı yarada bilərsiniz. robots.txt faylı hansı skanerlərin saytın hansı hissələrinə daxil ola biləcəyi haqqında qaydaları ehtiva edən mətn faylıdır. Məsələn, example.com üçün robots.txt faylı belə görünə bilər:

Əgər robots.txt ilə yenisinizsə, bizimlə başlayın
robots.txt-ə giriş. Siz həmçinin tapa bilərsiniz
robots.txt faylının yaradılması üçün məsləhətlər.

Faylın yeri və qüvvədə olma diapazonu

Siz robots.txt faylını dəstəklənən protokolda saytın ən yüksək səviyyəli qovluğunda yerləşdirməlisiniz. robots.txt faylının URL-i (digər URL-lər kimi) hərf həssasdır. Google Axtarış halında dəstəklənən protokollar HTTP, HTTPS və FTP-dir. HTTP və HTTPS-də skanerlər robots.txt faylını qeyri-şərtsiz HTTP ilə əldə edirlər GET sorğusu; FTP-də skanerlər standart istifadə edirlər RETR (RETRIEVE) əmrini, anonim girişdən istifadə etməklə.

Google robots.txt spesifikasiyasını necə şərh edir — 2

robots.txt faylında sadalanan qaydalar yalnız robots.txt faylının yerləşdiyi hosta, protokola və port nömrəsinə şamil edilir.

Etibarlı robots.txt URL-lərinin nümunələri

Aşağıdakı cədvəldə robots.txt URL nümunələri və onların hansı URL yolları üçün etibarlı olduğu göstərilir. Birinci sütun robots.txt faylının URL-ni, ikinci sütun isə həmin robots.txt faylının şamil olunduğu və olunmadığı domenləri ehtiva edir.

Robots.txt URL nümunələri
https://example.com/robots.txt

Bu ümumi haldır. Digər alt domenlər, protokollar və ya port nömrələri üçün etibarlı deyil. Eyni host, protokol və port nömrəsindəki bütün alt qovluqlardakı bütün fayllar üçün etibarlıdır.

Üçün etibarlıdır:

  • https://example.com/
  • https://example.com/folder/file

Etibarlı deyil:

  • https://other.example.com/
  • http://example.com/
  • https://example.com:8181/
https://www.example.com/robots.txt

Alt domendəki robots.txt yalnız həmin alt domen üçün etibarlıdır.

Üçün etibarlıdır:
https://www.example.com/

Etibarlı deyil:

  • https://example.com/
  • https://shop.www.example.com/
  • https://www.shop.example.com/
https://example.com/folder/robots.txtEtibarlı robots.txt faylı deyil. Skanerlər alt qovluqlarda robots.txt fayllarını yoxlamırlar.
https://www.exämple.com/robots.txt

IDN-lər punycode versiyalarına bərabərdir. Həmçinin baxın
RFC 3492.

Üçün etibarlıdır:

  • https://www.exämple.com/
  • https://xn--exmple-cua.com/

Üçün etibarlı deyil:
https://www.example.com/

ftp://example.com/robots.txt

Üçün etibarlıdır:
ftp://example.com/

Üçün etibarlı deyil:
https://example.com/

https://212.96.82.21/robots.txt

Host adı kimi IP ünvanı olan robots.txt yalnız həmin IP ünvanının host adı kimi skan edilməsi üçün etibarlıdır. O, həmin IP ünvanda yerləşdirilən bütün vebsaytlar üçün avtomatik olaraq etibarlı deyil (baxmayaraq ki, robots.txt faylının paylaşıldığı ehtimalı var, bu halda o, paylaşılan host adı altında da əlçatan olardı).

Üçün etibarlıdır:
https://212.96.82.21/

Üçün etibarlı deyil:
https://example.com/ (hətta yerləşdirilsə belə 212.96.82.21)

https://example.com:443/robots.txt

Standart port nömrələri (80 HTTP üçün, 443 HTTPS üçün,
21 FTP üçün) standart host adlarına bərabərdir.

Üçün etibarlıdır:

  • https://example.com:443/
  • https://example.com/

Üçün etibarlı deyil:
https://example.com:444/

https://example.com:8181/robots.txt

Standart olmayan port nömrələrindəki Robots.txt faylları yalnız həmin port nömrələri vasitəsilə əldə edilən məzmun üçün etibarlıdır.

Üçün etibarlıdır:
https://example.com:8181/

Üçün etibarlı deyil:
https://example.com/

Xətələrin və HTTP status kodlarının idarə olunması

Robots.txt faylı tələb olunduqda serverin cavabının HTTP status kodu Google-un skanerlərinin robots.txt faylından necə istifadə edəcəyinə təsir edir. Aşəğıdakı cədvəl Googlebot-un fərqli HTTP status kodları üçün robots.txt fayllarına necə yanaşdığını ümumiləşdirir.

Xətələrin və HTTP status kodlarının idarə olunması
2xx (müvəffəqiyyət)Uğura işarə edən HTTP status kodları Google skanerlərini server tərəfindən təqdim olunduğugibi robots.txt faylını emal etməyə sövq edir.
3xx (əks etdirmə / yönləndirmə)

Google tərəfindən müəyyən edildiyi kimi ən az beş yönləndirmə hopunu izləyir
RFC 1945 və sonra
dayanır və bunu robots.txt faylı üçün 404 kimi qəbul edir. Bu, həmçinin yönləndirmə zəncirindəki istənilən qadağan olunmuş URL-lərə də şamil edilir, çünki skaner yönləndirmələrə görə qaydaları əldə edə bilməyib.

Google robots.txt fayllarında məntiqi yönləndirmələri izləmir (freymlər, JavaScript və ya
meta yeniləmə tipli yönləndirmələr).

4xx (müştəri xətələri)

Google-un skanerləri hamısını 4xx xətələrini, 429istisna olmaqla, etibarlı robots.txt faylı mövcud deyilmiş kimi qəbul edir. Bu o deməkdir ki, Google heç bir skan məhdudiyyətinin olmadığını ehtimal edir.

Skan tezliyinizi necə məhdudlaşdırmağı öyrənin

5xx (server xətələri)

  1. Google robots.txt faylını tapır, lakin onu əldə edə bilmirsə, Google bu davranışı izləyir:
  2. İlk 12 saat ərzində Google saytı skan etməyi dayandırır, lakin robots.txt faylını əldə etməyə çalışmaqda davam edir. Google yeni versiyanı əldə edə bilməsə, növbəti 30 gün ərzində Google yeni versiyanı əldə etməyə çalışarkən sonuncu yaxşı versiyadan istifadə edəcək. A
    503 (xidmət əlçatmazdır)
  3. xəta olduqca tez-tez yenidən cəhd etməklə nəticələnir. Əgər keşi yaddaşda mövcud versiya yoxdursa,
    Google heç bir skan məhdudiyyətinin olmadığını ehtimal edir.
    • Xətalar hələ də 30 gündən sonra düzəldilməyibsə:
    • Sayt ümumilikdə Google üçün əlçatmazdırsa, Google heç bir robots.txt faylı yoxmuş kimi davranacaq (lakin yenə də yeni versiyanı yoxlamağa davam edəcək).
Saytda ümumi əlçatanlıq problemləri varsa, Google robots.txt faylını dövri olaraq tələb etməyə davam edərək saytı skan etməyi dayandıracaq.Digər xətalar DNS və ya şəbəkə problemləri (məsələn, vaxtaşırı fasilələr, etibarsız cavablar, sıfırlanmış və ya kəsilmiş əlaqələr və HTTP fraqmentasiya xətaları) səbəbindən əldə edilə bilməyən robots.txt faylı.

server xəstəsi

Önbəlləmə (Kэşləmə) Google adətən robots.txt faylının məzmununu 24 saata qədər keşləyir, lakin keşi yeniləmək mümkün olmadıqda (məsələn, vaxtaşırı fasilələr və ya 5xx
xətaları səbəbindən) onu daha uzun müddətə keşləyə bilər. Keşlənmiş cavab müxtəlif skanerlər tərəfindən paylaşıla bilər.
Google max-age Cache-Control əsasında keş ömrünü artıra və ya azalda bilər.
Google may increase or decrease the cache lifetime based on
max-age Cache-Control

HTTP başlıqları.

Fayl formatı

robots.txt faylı olmalıdır
UTF-8 kodlaşdırılmış mətn faylı və sətirlər ayrılmalıdır CR, CR/LFvə ya
LF.

Google robots.txt fayllarındakı etibarsız sətirləri, o cümlədən robots.txt faylının əvvəlindəki Unicode
Bayt Ardıcıllığı Markası
(BOM) nəzərə almır və yalnız etibarlı sətirlərdən istifadə edir. Məsələn, əgər endirilən məzmun robots.txt qaydaları əvəzinə HTML-dirsə, Google məzmunu təhlil etməyə və qaydaları çıxarmağa çalışacaq, qalan hər şeyi isə nəzərə almayacaq.

Eynilə, əgər robots.txt faylının simvol kodlaşdırılması UTF-8 deyilşə, Google UTF-8 diapazonuna daxil olmayan simvolları nəzərə almaya bilər ki, bu da potensial olaraq robots.txt qaydalarını etibarsız edə bilər.

Google 500 ölçüsündə robots.txt fayl ölçüsü limitini tətbiq edir
kibibayt (KiB). Maksimum fayl ölçüsündən sonra gələn məzmun nəzərə alınmır. həddindən artıq böyük robots.txt faylı ilə nəticələnəcək qaydaları birləşdirərək robots.txt faylının ölçüsünü azalda bilərsiniz. Məsələn, xaric edilmiş materialı ayrı qovluqda yerləşdirin.

Sintaksis

Etibarlı robots.txt sətri sahədən, qoşa nöqtədən və dəyərdən ibarətdir. Sahə adları böyük-kiçik hərflərə həssas deyil (məsələn, User-agent və user-agent eyni cür qəbul edilir). Boşluqlar isteğe bağlıdır, lakin oxunaqlılığı yaxşılaşdırmaq üçün tövsiyə olunur. Sətirin əvvəlində və sonunda olan boşluq nəzərə alınmır. Şərhlər əlavə etmək üçün şərhinizin əvvəlinə
# simvolunu qoyun. Unutmayın ki, simvoldan sonra gələn hər şey # nəzərə alınmayacaq. Ümumi format belədir
<field>:<value><#optional-comment>.

Google aşağıdakı sahələri dəstəkləyir (digər sahələr, məsələn, crawl-delay dəstəklənmir):

  • user-agent: qaydaların hansı axtarış botuna tətbiq olunduğunu müəyyən edir.
  • allow: tarana bilən URL yolu.
  • disallow: tarana bilməyən URL yolu.
  • sitemap: sayt xəritəsinin tam URL ünvanı.

The allow və disallow sahələr həm də qaydalar (həmçinin
direktivlər kimi də tanınır) adlanır. Bu qaydalar həmişə aşağıdakı formatda müəyyən edilir
qayda: [path] harada ki [path] isteğe bağlıdır. Defolt olaraq, göstərilən skanerlər üçün skan etmə məhdudiyyətləri yoxdur. Skanerlər olmadan qaydalara məhəl qoymurlar
[path].

The [path] dəyəri, əgər göstərilibsə, robots.txt faylının əldə edildiyi vebsaytın köökünə nisbətdir (eyni protokol, port nömrəsi, host və domen adlarından istifadə etməklə). Yolun qiyməti ilə başlamaq lazımdır / kökü təyin etmək üçün və dəyər hərf həssasdır. Haqqında ətraflı öyrənin
yol dəyərlərinə əsasən URL uyğunluğu.

user-agent

The user-agent sətri hansı skaner qaydalarının tətbiq olunduğunu müəyyən edir. Bax
Google-un skanerləri və user-agent sətirləri
robots.txt faylınızda istifadə edə biləcəyiniz user-agent sətirlərinin hərtərəfli siyahısı üçün.

Hər ikisi user-agent sahə adı və onun dəyəri hərf həssas deyil.

disallow

The disallow qaydası tərəfindən müəyyən edilmiş skanerlər tərəfindən daxil edilməməli olan yolları müəyyən edir user-agent xətt disallow qayda qruplaşdırılmışdır.
Skanerlər yoldan kənar qaydaya məhəl qoymurlar.

Google tarama üçün icazə verilməyən səhifələrin məzmununu indeksləşdirə bilməz, lakin o, hələ də URL-ni indeksləşdirə və fraqmentsiz axtarış nəticələrində göstərə bilər. Necə öyrənin
indeksləməni bloklayın.

Sahə adı (disallow) hərf həssas deyil, lakin onun dəyəri hərf həssasdır.

İstifadəsi:

allow

The allow qaydası təyin edilmiş skanerlər tərəfindən daxil edilə bilən yolları müəyyən edir. Heç bir yol göstərilmədikdə, qaydaya məhəl qoyulmur.

Sahə adı (allow) hərf registrindən asılı deyil, lakin onun qiyməti registrə həssasdır.

İstifadə qaydası:

sitemap

Google, Bing və digər əsas axtarış sistemləri sitemap sahəsini dəstəkləyir sitemaps.org.

tərəfindən müəyyən edildiyi kimi, robots.txt faylında. Sahə adı (sitemap) hərf registrindən asılı deyil, lakin onun qiyməti registrə həssasdır.

İstifadə qaydası:

The [absoluteURL] sətri sitemap və ya sitemap indeks faylının yerini göstərir. O, protokol və host daxil olmaqla tam kvalifikasiya olunmuş URL olmalıdır və URL-kodlaşdırılması vacib deyil. URL robots.txt faylı ilə eyni hostda olmaq məcburiyyətində deyil. Siz daxil edə biləcəyiniz sitemap-lərin sayında heç bir məhdudiyyət qoymadan bir neçə sitemap sahəsi təyin edə bilərsiniz. Sitemap sahəsi hər hansı müəyyən istifadəçi agenti ilə əlaqələndirilmir və tarama üçün qadağan olunmadığı təqdirdə bütün skanerlər tərəfindən izlənilə bilər.

Məsələn:

Sətrlərin və qaydaların qruplaşdırılması

Hər bir skaner üçün
user-agent sətrlərini təkrarlamaqla bir çox istifadəçi agentinə tətbiq olunan qaydaları qruplaşdıra bilərsiniz.

Məsələn:

Bu nümunədə dörd fərqli qayda qrupu mövcuddur:

  • “a” istifadəçi agenti üçün bir qrup.
  • “b” istifadəçi agenti üçün bir qrup.
  • Həm “e”, həm də “f” istifadəçi agentləri üçün bir qrup.
  • “h” istifadəçi agenti üçün bir qrup.

Qrupun texniki təsviri üçün baxın
REP-in 2.1 bölməsi.

İstifadəçi agentləri üçün üstünlük sıra nömrəsi

Xüsusi skaner üçün yalnız bir qrup etibarlıdır. Google-un skanerləri skanerinizin istifadəçi agentinə uyğun gələn ən spesifik istifadəçi agenti olan qrupu robots.txt faylında tapmaqla düzgün qaydalar qrupunu müəyyənləşdirir. Digər qruplar nəzərə alınmır. Bütün uyğun gəlməyən mətnlər nəzərə alınmır (məsələn, həm googlebot/1.2 həm də googlebot* bərabərdir googlebot). Robots.txt faylı daxilindəki qrupların sırası önəmsizdir.

İstifadəçi agenti üçün birdən çox spesifik qrup elan edilibsə, müəyyən istifadəçi agentinə tətbiq olunan qruplardakı bütün qaydalar daxili olaraq tək bir qrupda birləşdirilir. İstifadəçi agentinə xas qruplar və qlobal qruplar (*) birləşdirilmir.

Nümunələr

User-agent sahələrinin uyğunlaşdırılması

Bax, botlar müvafiq qrupu bu cür seçərdi:

Hər bot üzrə izlənilən qrup
Googlebot Newsgooglebot-news 1-ci qrupu izləyir, çünki 1-ci qrup ən spesifik qrupdur.
Googlebot (veb)googlebot 3-cü qrupu izləyir.
Googlebot StorebotStorebot-Google 2-ci qrupu izləyir, çünki heç bir spesifik
Storebot-Google qrup yoxdur.
Googlebot News (şəkilləri indeksləyərkən)Şəkilləri indeksləyərkən, googlebot-news 1-ci qrupu izləyir.
googlebot-news Google Şəkillər üçün şəkilləri indeksləmir, buna görə də o, yalnız
1-ci qrupu izləyir.
Digər bot (veb)Digər Google botları 2-ci qrupu izləyir.
Digər bot (xəbərlər)Xəbər məzmununu indeksləyən, lakin özünü belə təqdim etməyən digər Google botları
googlebot-news 2-ci qrupu izləyir. Əlaqəli bot üçün daxiletmə olsa belə, o, yalnız xüsusi olaraq uyğun gəldiyi halda etibarlıdır.

Qaydaların qruplaşdırılması

Əgər robots.txt faylında müəyyən user-agent üçün uyğun olan bir neçə qrup varsa,
Google botları qrupları daxildə birləşdirir. Məsələn:

Botlar qaydaları user-agent əsasında daxildən qruplaşdırır, məsələn:

Qaydalardan başqa allow, disallow, və user-agent robots.txt təhlilçisi tərəfindən nəzərə alınmır. Bu o deməkdir ki, aşağıdakı robots.txt fraqmenti
bir qrup kimi qəbul edilir və beləliklə, həm user-agent a həm də b təsirə məruz qalır disallow: / rule:

Axtarış botları robots.txt qaydalarını emal edərkən aşağıdakıları nəzərə almırlar: sitemap sətri.
Məsələn, botlar əvvəlki robots.txt fraqmentini belə başa düşərdilər:

Yol dəyərlərinə əsaslanan URL uyğunlaşdırılması

Google yol dəyərindən allow və disallow qaydalarında bir qaydanın saytdakı müəyyən bir URL-ə tətbiq olunub-olunmadığını müəyyən etmək üçün əsas kimi istifadə edir. Bu, qaydanın botun əldə etməyə çalışdığı URL-in yol komponenti ilə müqayisə edilməsi yolu ilə işləyir.
Qaydalardakı yol xam UTF-8 simvolları və ya faiz kodlaşdırılmış UTF-8 sətirləri ola bilər
(uyğun olaraq RFC 3986).
Müəyyən edildiyi kimi RFC 9309 Section 2.2.2,
Google-un botları qaydaları URL-lərlə onların faiz kodlaşdırılmış formalarından istifadə edərək müqayisə edir və xam UTF-8 qayda yollarını avtomatik olaraq faiz kodlaşdırılmış formalara kanonikləşdirir. Bu o deməkdir ki, məsələn,
Disallow: /foo/bar/ツ və Disallow: /foo/bar/%E3%83%84 analizator tərəfindən eyni cür qəbul edilir.

Google, Bing və digər əsas axtarış sistemləri yol dəyərləri üçün wildcards simvollarının məhdud formasını dəstəkləyir. Bu şablon simvolları bunlardır:

  • * istənilən etibarlı simvolun 0 və ya daha çox instansiyasını göstərir.
  • $ URL-in sonunu göstərir.

Aşağıdakı cədvəl müxtəlif şablon simvollarının təhlilə necə təsir etdiyini göstərir:

Nümunə yol uyğunluqları
/Kök və istənilən aşağı səviyyəli URL ilə uyğun gəlir.
/*Ekvivalentdir /. Sonda olan şablon simvolu nəzərə alınmır.
/$Yalnız köklə uyğun gəlir. İstənilən aşağı səviyyəli URL-in taramasına icazə verilir.
/fish

ilə başlayan istənilən yolla uyğun gəlir /fish. Nəzərə alın ki, uyğunlaşdırma böyük-kiçik hərflərə həssasdır.

Uyğun gəlir:

  • /fish
  • /fish.html
  • /fish/salmon.html
  • /fishheads
  • /fishheads/yummy.html
  • /fish.php?id=anything

Uyğun gəlmir:

  • /Fish.asp
  • /catfish
  • /?id=fish
  • /desert/fish
/fish*

Bərabərdir: /fish. Sonda gələn şablon simvolu nəzərə alınmır.

Uyğun gəlir:

  • /fish
  • /fish.html
  • /fish/salmon.html
  • /fishheads
  • /fishheads/yummy.html
  • /fish.php?id=anything

Uyğun gəlmir:

  • /Fish.asp
  • /catfish
  • /?id=fish
  • /desert/fish
/fish/

İçindəki hər şeyə uyğun gəlir: /fish/ qovluğu.

Uyğun gəlir:

  • /fish/
  • /fish/?id=anything
  • /fish/salmon.htm

Uyğun gəlmir:

  • /fish
  • /fish.html
  • /animals/fish/
  • /Fish/Salmon.asp
/*.php

Tərkibində olan istənilən yola uyğun gəlir .php.

Uyğun gəlir:

  • /index.php
  • /filename.php
  • /folder/filename.php
  • /folder/filename.php?parameters
  • /folder/any.php.file.html
  • /filename.php/

Uyğun gəlmir:

  • / (/index.php ilə uyğun gəlsə belə)
  • /windows.PHP
/*.php$

ilə bitən istənilən yolla uyğun gəlir .php.

Uyğundur:

  • /filename.php
  • /folder/filename.php

Uyğun gəlmir:

  • /filename.php?parameters
  • /filename.php/
  • /filename.php5
  • /windows.PHP
/fish*.php

tərkibində olan istənilən yolla uyğun gəlir /fish və .php, bu ardıcıllıqla.

Uyğundur:

  • /fish.php
  • /fishheads/catfish.php?parameters

Uyğun gəlmir:

/Fish.PHP

Qaydalar üçün prioritet ardıcıllığı

robots.txt qaydalarını URL-lərə uyğunlaşdırarkən, skanerlər qayda yolunun uzunluğuna əsasən ən xüsusi qaydadan istifadə edirlər. Ziddiyyətli qaydalar olduqda, o cümlədən şablon simvolları olanlar, Google ən az məhdudlaşdırıcı qaydadan istifadə edir.

Aşağıdakı nümunələr Google skanerlərinin verilmiş URL-ə hansı qaydanı tətbiq edəcəyini nümayiş etdirir.

Nümunə vəziyyətlər
https://example.com/page

Tətbiq olunan qayda: allow: /p, çünki o daha xüsusidir.

https://example.com/folder/page

Tətbiq olunan qayda: allow: /folder, çünki qaydaların ziddiyyət təşkil etdiyi hallarda Google ən az məhdudlaşdırıcı qaydanı tətbiq edir.

https://example.com/page.htm

Tətbiq olunan qayda: disallow: /*.htm, çünki qayda yolu daha uzundur və URL-də daha çox simvola uyğun gəlir, ona görə də daha spesifikdir.

https://example.com/page.php5

Tətbiq olunan qayda: allow: /page, çünki qaydaların ziddiyyət təşkil etdiyi hallarda Google ən az məhdudlaşdırıcı qaydanı tətbiq edir.

https://example.com/

Tətbiq olunan qayda: allow: /$, çünki daha spesifikdir.

https://example.com/page.htm

Tətbiq olunan qayda: disallow: /, çünki
allow qaydası yalnız kök URL-ə tətbiq olunur.

Alien Road

Bunu necə tətbiq edirik

The formal specification resolves the arguments that the introductory guide leaves open, particularly around precedence and wildcards. We cite it directly when a developer and an SEO disagree about whether a rule applies.

Əlaqəli xidmətlər

Paylaş