Нестандартные директивы и расширения
Директива Crawl-delay
Начнем издалека. Поисковые роботы Yahoo и MSN, Slurp и msnbot соответственно, понимают такую дополнительную директиву, как Crawl-delay. Значением данной директивы должна быть цифра, которая указывает время в секундах между обращениями робота к сайту. Данная директива была добавлена после неоднократных обращений пользователей в службу технической поддержки указанных компаний по поводу слишком частых запросов роботов и, соответственно, высокой нагрузке серверов и большому исходящему трафику. Для сайтов, размещенных на площадках в Украине и России, трафик, отдаваемый роботам, является зарубежным, поэтому имеет смысл использовать директиву Crawl-delay для снижения нагрузки и исходящего трафика, в особенности для крупных сайтов.
Директива Allow
Поисковая система Google использует в своих алгоритмах наибольшее количество расширений. Одно из таких расширений — директива Allow. В качестве значения указывается частичный путь, который разрешается индексировать роботу. С помощью этой директивы возможно разрешить индексацию одного файла в то время, когда вся папка запрещена к индексации, например:
User-Agent: Googlebot
Disallow: /papka1/
Allow: /papka1/moj_fail.html
В качестве эксперимента я попытался применить директиву Allow в одном robots.txt, однако в записи из 6-ти или 7-ми правил столкнулся с коллизиями, связанными с "перекрытиями" правил в Disallow и Allow, которые не удавалось однозначно решить, поэтому пришлось отказаться от использования данной директивы.
Символы подстановки
Символы подстановки скрывают за собой один или несколько символов. Наиболее часто употребляющийся символ — «*», который обозначает ноль и более символов. Использование символов подстановки в файле robots.txt не предусмотрено, кроме указания всех остальных поисковых систем в директиве User-agent, однако в директиве Disallow данный символ в протоколе не интерпретируется никак иначе самого себя.
Однако Google в своих алгоритмах допускает использование символа «*» в качестве «множества любых символов», а также символа «$» в качестве «конца строки». В результате можно блокировать адреса с заданным динамическим параметром, независимо от того, где в адресе данный параметр встречается, а также блокировать все файлы с определенным расширением, например:
# блокируются все адреса с параметром ts
Disallow: /*ts=*
# блокируются все адреса, заканчивающиеся на asp
Disallow: /*.asp$
В алгоритмах поисковой системы Рамблер также заложена функция обработки символа «*», как символа подстановки, т.е. приведенный выше пример с параметром ts можно использовать для запрещения индексации определенных динамических адресов роботом StackRambler.
Директива Host
Директива Host является наиболее широко известной нестандартной директивой в Рунете. Это директива для робота поисковой системы Яндекс, ответственного за работу с зеркалами. Значением директивы должен быть адрес главного зеркала сайта без http://. При указании главного зеркала сайта, все остальные адреса сайта будут считать второстепенными зеркалами «приклеются» к главному. Однако, следует заметить, что, в отличие от всех остальных директив robots.txt, директива Host является лишь рекомендацией роботу, а не четким указанием адреса главного зеркала.
(с) starsite.ru