вторник, 5 декабря 2006 г.

Пользуемся файлом robots.txt

Допустим у вас есть свой веб-сайт. Пойдем дальше. Допустим вы захотели добавить его в базу данных поисковых машин Google, Yahoo, Yandex, Rambler... Существует много разных методов это сделать. Это целое направление которое получило название SOE (search engine optimization) . Если вы хотите серьезно этим заняться, то вам следует на это потратить намного больше времени, чем требуется для прочтения одной статьи.

Здесь я всего этого касаться не буду. Итак. Считаем что вы уже зарегестрировали свой сайт в поисковых машинах. Если нет, то сделать это можно по этим ссылкам:




Google

Yahoo

Yandex

Rambler

Внимания. Аккаунт на некоторых поисковиках требуется перед тем, как зарегестрировать сайт. Если у вас его нет, то вам всего лишь придется его сделать. Это займет несколько минут.

Теперь по крайней мере 4 поисковых машины знают о вашем сайте (но все равно вам придется подождать иногда и пару месяцев, пока они проиндексируют сайт). Вот здесь и возникает проблема. Допустим у меня есть сайт. Например http://www.storageguide.al.ru/ на котором есть одна страничка, например http://www.storageguide.al.ru/data/downloads.php , которая содержит мою приватную информацию. Доступ на нее имеют только определенные пользователи. Но роботы поисковых машин этого не понимают, пока им это не укажешь. Для этого и существует файл robots.txt, который нужно поместить в корень вашего сайта.

Формат файла robots.txt file указан стандартами Robot Exclusion Standard.
Файл robots.txt состоит из записей. Каждая запись состоит как минимум из двух строк: строки с названием клиентского приложения - User-agent, и одной или нескольких строк, начинающихся с директивы Disallow. Пустые строки в файле robots.txt являются значимыми, они разделяют записи, имеющие разные строки User-agent.

Приведу некоторые примеры:
Роботам всех поисковых машин разрешена индексация всех страниц сайта:

User-agent: *
Disallow:

Роботам всех поисковых машин разрешена индексация всех страниц сайта:

User-agent: *
Disallow:/

Запретить роботу Google индексировать поддиректории, начинающиеся с private :

User-agent: googlebot
Disallow:/private*/

Запретить доступ ко всем страницам, содержащим знак ? :

User-agent: *
Disallow:/*?*

С помощью знака $ вы можете указывать на конец файла. Например блокировать все файлы, заканчивающиеся на .php :

User-agent: *
Disallow:/*.php$

Помимо директивы Disallow, можна еще использовать и Allow или их комбинацию.
Например :

User-agent: *
Alloew: /*?$
Disallow:/*?

Т.е. Disallow:/*? будет блокировать все URLs заключающие в себе знак ?, но опция Alloew: /*?$ разрешит URLs, которые заканчиваются на ?.

Ну и пример, который я попробывал на своем сайте.

# No index my file downloads.php
User-agent: *
Disallow: /data/downloads.php

(знак # служит для включения коментариев).

Чтобы протестировать что у вас получилось, советую воспользоваться утилитой для вебмастеров, которая доступна всем, имеющим учетную запись Google.



















Базу данных из приблизительно 300 поисковых роботов можно посмотреть здесь .

Также можете почитать следуещее:

http://www.robotstxt.org/wc/robots.html
http://www.webmascon.com/topics/adv/8a.asp
http://www.google.com/support/webmasters/bin/topic.py?topic=8843&hl=ru

На сегодня Все!