Чому результати пошуку Google включають сторінки, заборонені в robots.txt?


18

На моєму сайті є кілька сторінок, від яких я хочу тримати подалі від пошукових систем, тому я заборонив їх у своєму robots.txtфайлі так:

User-Agent: *
Disallow: /email

Але нещодавно я помітив, що Google все ще іноді повертає посилання на ці сторінки в своїх результатах пошуку. Чому це відбувається і як я можу це зупинити?

Фон:

Кілька років тому я створив простий веб-сайт для клубу, в якому брав участь мій родич. Вони хотіли, щоб на їх сторінках були посилання на електронну пошту, щоб спробувати не допустити, щоб ці адреси електронної пошти не закінчувались занадто багато списки спаму, замість використання прямих mailto:посилань я зробив ці посилання вказівкою на простий скрипт ловушки переспрямовування / адреси, що працює на моєму власному сайті. Цей скрипт повертає або переадресацію 301 на фактичну mailto:URL-адресу, або, якщо він виявив підозрілий шаблон доступу, сторінку, що містить безліч випадкових підроблених електронних адрес та посилань на більше таких сторінок. Щоб утримати законних пошукових ботів від пастки, я встановив robots.txtнаведене вище правило, забороняючи весь простір як законних посилань переспрямовування, так і сторінок пастки.

Однак нещодавно один з людей в клубі шукав Google своє власне ім’я і був дуже здивований, коли в одному з результатів на першій сторінці було посилання на скрипт переспрямування, за яким випливало заголовок, що складається з їх електронної адреси по моєму імені. Звичайно, вони негайно мені по електронній пошті і хотіли знати, як отримати їх адресу з індексу Google. Я теж був дуже здивований, оскільки не мав уявлення, що Google взагалі індексує такі URL-адреси, що, здається, порушує моє robots.txtправило.

Мені вдалося подати в Google запит на видалення, і, здається, це спрацювало, але я хотів би знати, чому і як Google обходить моє robots.txtподібне і як переконатися, що жодна із заборонених сторінок не з’явиться у своїх Результати пошуку.

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


1
як Google обходить мій robots.txt" Я здогадуюсь, ви вже знаєте це (або як, на землі, ви могли б створити сайт в першу чергу), але у випадку, якщо якийсь нещасний дурень блукає ... robots.txtфайл, як маленький знак «Стороннім вхід заборонено» поруч з чиєї - то дороги. Це не магія, і (якщо відвідувач прямо не шукає цього), вони можуть наїхати на вашу власність, навіть не зазнаючи незначного впливу на її існування. Є Інтернет-еквіваленти прожекторів та огорожі з бритвою, але якщо це те, що ви хочете, robots.txtце не так.
Парфянський розстріл

Відповіді:


25

Схоже, Google навмисно включає robots.txtв свій індекс URL-адреси, заборонені, якщо є посилання на ці URL-адреси з інших сторінок, на які вони сканували. Процитуємо їх веб - майстрів Інструменти сторінки довідки :

"Хоча Google не сканує та не індексує вміст сторінок, заблокованих robots.txt, ми все одно можемо індексувати URL-адреси, якщо знаходимо їх на інших сторінках Інтернету. Як результат, URL-адреса сторінки та, можливо, інші Загальнодоступна інформація, така як текст прив’язки до посилань на сайт, або заголовок проекту Open Directory (www.dmoz.org) може відображатися в результатах пошуку Google. "

Мабуть, Google трактує Disallowдирективу robots.txtяк заборону сканування сторінки, а не проти її індексації . Я припускаю, що це технічно є правильним тлумаченням, навіть якщо воно не відповідає законам, що стосуються мене.

У цій статті інтерв'ю Метт Каттс від Google дає трохи більше інформації та дає пояснення, чому вони роблять це:

"У перші дні багато дуже популярних веб-сайтів взагалі не хотіли сканувати. Наприклад, eBay та New York Times не дозволяли жодній пошуковій системі або, принаймні, Google не сканувати жодну сторінку з неї." Бібліотека Конгресу мала різні розділи, в яких говорилося, що ви не можете сканувати за допомогою пошукової системи. І тому, коли хтось прийшов до Google і він набрав eBay, і ми не сканували eBay, і ми не могли повернути eBay, виглядав субоптимальним. Отже, компроміс, який ми вирішили придумати, - ми не скануємо вас з robots.txt, але ми можемо повернути посилання на URL, яке ми бачили ".

Рішення рекомендується на обох з цих сторінок, щоб додати noindexмета - тег на сторінки , які ви не хочете індексувати. ( X-Robots-TagЗаголовок HTTP також повинен працювати на сторінках, що не належать до HTML. Я не впевнений, чи працює він на переадресації.) Парадоксально, але це означає, що ви повинні дозволити Googlebot сканувати ці сторінки (видаляючи їх robots.txtцілком, або додавши окремий більш дозвільний набір правил для Googlebot), оскільки в іншому випадку він не може бачити метатег в першу чергу.

Я відредагував свій скрипт для переспрямування / павука, щоб надіслати мета-тег і X-Robots-Tagзаголовок зі значенням noindex,nofollowі дозволив Googlebot сканувати URL-адресу сценарію в моєму robots.txt. Ми побачимо, чи працює він, як тільки Google переіндексує мій сайт.


5

Це правда, що, хоча це повинно заважати Google (і хорошим ботам) не сканувати ці сторінки та читати їхній вміст, вони все одно можуть показувати URL-посилання у SERP, якщо вони пов’язані, у формі:

Посилання URL-адреси лише в SERP-і Google

Як бачите, назви чи опису немає, це буквально лише URL-адреса. Природно, що такі результати, як правило, опускаються з SERP, якщо ви прямо не шукаєте їх.

І як ви згадуєте у своїй відповіді, якщо ви не хочете, щоб URL-адреса взагалі відображалася в SERP, тоді вам потрібно дозволити роботи, але включити метатег noindex.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.