Разное

Disallow cgi bin: web crawler — What is the use of «Disallow: /sitepanel/ and Disallow: /cgi-bin/»?

17.11.1990

Все, все, все о Robots.txt — Реклама и продвижение

Robots.txt

Поисковые сервера всегда перед индексацией вашего ресурса ищут в корневом каталоге вашего домена файл с именем «robots.txt» (http://www.mydomain.com/robots.txt). Этот файл сообщает роботам (паукам-индексаторам), какие файлы они могут индексировать, а какие нет.

Формат файла robots.txt — особый. Он состоит из записей. Каждая запись состоит из двух полей: строки с названием клиентского приложения (user-agent), и одной или нескольких строк, начинающихся с директивы Disallow:

<Поле> ":" <значение>

Robots.txt должен создаваться в текстовом формате Unix. Большинство хороших текстовых редакторов уже умеют превращать символы перевода строки Windows в Unix. Либо ваш FTP-клиент должен уметь это делать. Для редактирования не пытайтесь пользоваться HTML-редактором, особенно таким, который не имеет текстового режима отображения кода.

Поле User-agent

Строка User-agent содержит название робота. Например:

User-agent: googlebot

Если вы обращаетесь ко всем роботам, вы можете использовать символ подстановки «*»:

User-agent: *

Названия роботов вы можете найти в логах вашего веб-сервера. Для этого выберите только запросы к файлу robots.txt. большинство поисковых серверов присваивают короткие имена своим паукам-индексаторам.

Поле Disallow:

Вторая часть записи состоит из строк Disallow. Эти строки — директивы для данного робота. Они сообщают роботу какие файлы и/или каталоги роботу неразрешено индексировать. Например следующая директива запрещает паукам индексировать файл email.htm:

Disallow: email.htm

Директива может содержать и название каталога:

Disallow: /cgi-bin/

Эта директива запрещает паукам-индексаторам лезть в каталог «cgi-bin».

В директивах Disallow могут также использоваться и символы подстановки. Стандарт диктует, что директива /bob запретит паукам индексировать и /bob. html и /bob/index.html.

Если директива Disallow будет пустой, это значит, что робот может индексировать ВСЕ файлы. Как минимум одна директива Disallow должна присутствовать для каждого поля User-agent, чтобы robots.txt считался верным. Полностью пустой robots.txt означает то же самое, как если бы его не было вообще.

Пробелы и комментарии

Любая строка в robots.txt, начинающаяся с #, считается комментарием. Стандарт разрешает использовать комментарии в конце строк с директивами, но это считается плохим стилем:

Disallow: bob #comment

Некоторые пауки не смогут правильно разобрать данную строку и вместо этого поймут ее как запрет на индексацию ресурсов bob#comment. Мораль такова, что комментарии должны быть на отдельной строке.

Пробел в начале строки разрешается, но не рекомендуется.

  Disallow: bob #comment

Примеры

Следующая директива разрешает всем роботам индексировать все ресурсы сайта, так как используется символ подстановки «*».

User-agent: *
Disallow:

Эта директива запрещает всем роботам это делать:

User-agent: *
Disallow: /

Данная директива запрещает всем роботам заходить в каталоги «cgi-bin» и «images»:

User-agent: *
Disallow: /cgi-bin/
Disallow: /images/

Данная директива запрещает роботу Roverdog индексировать все файлы сервера:

User-agent: Roverdog
Disallow: /

Данная директива запрещает роботу googlebot индексировать файл cheese.htm:

User-agent: googlebot
Disallow: cheese.htm

Если вас интересуют более сложные примеры, попутайтесь вытянуть файл robots.txt с какого-нибудь крупного сайта, например CNN или Looksmart.

Дополнения к стандартам

Несмотря на то, что были предложения по расширению стандарта и введению директивы Allow или учета версии робота, эти предложения формально так и не были утверждены.

Поход в поисках robots.txt

При проверке нашего валидатора robots.txt (см. конец статьи), нам понадобилось найти много-много «корма» для него. Мы создали спайдер, который скачивал с каждого найденного сайта лишь один файл robots.txt. Мы прошлись по всем ссылкам и доменам, занесенным в Open Directory Project. Так мы прошлись по 2.4 миллионам URL и накопали файлов robots.txt примерно на 75 килобайт.

Во время этого похода мы обнаружили огромное количество проблем с файлами robots.txt. Мы увидели, что 5% robots.txt плохой стиль, а 2% файлов были настолько плохо написаны, что ни один робот не смог бы их понять. Вот список некоторых проблем, обнаруженных нами:

Перевернутый синтаксис

Одна из самых распространенных ошибок — перевернутый синтаксис:

User-agent: *
Disallow: scooter

А должно быть так:

User-agent: scooter
Disallow: *

Несколько директив Disallow в одной строке:

Многие указывали несколько директив на одной строке:

Disallow: /css/ /cgi-bin/ /images/

Различные пауки поймут эту директиву по разному. Некоторые проигнорируют пробелы и поймут директиву как запрет на индексацию каталога /css//cgi-bin//images/. Либо они возьмут только один каталог (/images/ или /css/) и проигнорируют все остальное.

Правильный синтаксис таков:

Disallow: /css/
Disallow: /cgi-bin/
Disallow: /images/

Перевод строки в формате DOS:

Еще одна распространенная ошибка — редактирование файла robots.txt в формате DOS. Несмотря на то, что из-за распространенности данной ошибки многие пауки-идексаторы научились понимать ее, мы считаем это ошибкой. Всегда редактируйте свой robots.txt в режиме UNIX и закачивайте файл на сайт в режиме ASCII. Многие FTP-клиенты умеют при закачке в текстовом режиме переводить символы строки из DOS-формата в UNIX-формат. Но некоторые этого не делают.

Комментарии в конце строки:

Согласно стандарту, это верно:

Disallow: /cgi-bin/ #this bans robots from our cgi-bin

Но в недавнем прошлом были роботы, которые заглатывали всю строку в качестве директивы. Сейчас нам такие роботы неизвестны, но оправдан ли риск? Размещайте комментарии на отдельной строке.

Пробелы в начале строки:

  Disallow: /cgi-bin/

Стандарт ничего не говорит по поводу пробелов, но это считается плохим стилем. И опять-таки, стоит ли рисковать?

Редирект на другую страницу при ошибке 404:

Весьма распространено, когда веб-сервер при ошибке 404 (Файл не найден) выдает клиенту особую страницу. При этом веб-сервер не выдает клиенту код ошибки и даже не делает редиректа. В этом случае робот не понимает, что файл robots.txt отсутствует, вместо этого он получит html-страницу с каким-то сообщением. Конечно никаких проблем здесь возникнуть не должно, но стоит ли рисковать? Бог знает, как разберет робот этот html-файл, приняв его за robots.txt. чтобы этого не происходило, поместите хотя бы пустой robots.txt в корневой каталог вашего веб-сервера.

Конфликты директив:

Чтобы вы сделали на месте робота slurp, увидев данные директивы?

User-agent: *
Disallow: /
#
User-agent: slurp

Disallow:

Первая директива запрещает всем роботам индексировать сайт, но вторая директива разрешает роботу slurp это делать. Так что же все-таки должен делать slurp? Мы не можем гарантировать, что все роботы поймут эти директивы правильно. В данном примере slurp должен проиндексировать весь сайт, а все остальные не должны уйти прямо с порога.

Верхний регистр всех букв — плохой стиль:

USER-AGENT: EXCITE
DISALLOW:

Несмотря на то, что стандарт безразлично относится к регистру букв в robots.txt, в именах каталогов и файлов регистр все-таки важен. Лучше всего следовать примерам и в верхнем регистре писать первые буквы только в словах User и Disallow.

Список всех файлов

Еще одна ошибка — перечисление всех файлов в каталоге:

Disallow: /AL/Alabama.html
Disallow: /AL/AR.html
Disallow: /Az/AZ.html
Disallow: /Az/bali.html
Disallow: /Az/bed-breakfast.html

Вышеприведенный пример можно заменить на:

Disallow: /AL
Disallow: /Az

Помните, что начальная наклонная черта обозначает, что речь идет о каталоге.

Конечно, ничто не запрещает вам перечислить парочку файлов, но мы речь ведем о стиле. Данный пример взят из файла robots.txt, размер которого превышал 400 килобайт, в нем было упомянуто 4000 файлов! Интересно, сколько роботов-пауков, посмотрев на этот файл, решили больше не приходить на этот сайт.

Есть только директива Disallow!

Нет такой директивы Allow, есть только Disallow. Этот пример неверный:

User-agent: Spot
Disallow: /john/
allow: /jane/

Правильно будет так:

User-agent: Spot
Disallow: /john/
Disallow:

Нет открывающей наклонной черты:

Что должен сделать робот-паук с данной директивой:

User-agent: Spot
Disallow: john

Согласно стандартам эта директива запрещает индексировать файл «john» и каталог john». Но лучше всего, для верности, использовать наклонную черту, чтобы робот мог отличить файл от каталога.

Еще мы видели, как люди записывали в файл robots. txt ключевые слова для своего сайта (подумать только — для чего?).

Бывали такие файлы robots.txt, которые были сделаны в виде html-документов. Помните, во FrontPage делать robots.txt не стоит.

Неправильно настроенный сервер

Почему вдруг на запрос robots.txt веб-сервер выдает бинарный файл? Это происходит в том случае, если ваш веб-сервер настроен неправильно, либо вы неправильно закачали на сервер сам файл.

Всегда после того, как вы закачали файл robots.txt на сервер, проверяйте его. Достаточно в броузере набрать простой запрос:

http://www.mydomain.com/robots.txt

Вот и все что нужно для проверки.

Особенности Google:

Google — первый поисковый сервер, который поддерживает в директивах регулярные выражения. Что позволяет запрещать индексацию файлов по их расширениям.

User-agent: googlebot
Disallow: *.cgi

В поле user-agent вам следует использовать имя «googlebot». Не рискуйте давать подобную директиву другим роботам-паукам.

МЕТА-тег robots

МЕТА тег robots служит для того, чтобы разрешать или запрещать роботам, приходящим на сайт, индексировать данную страницу. Кроме того, этот тег предназначен для того, чтобы предлагать роботам пройтись по всем страницам сайта и проиндексировать их. Сейчас этот тег приобретает все большее значение.

Кроме того, этим тегом могут воспользоваться те, кто не может доступиться к корневому каталогу сервера и изменить файл robots.txt.

Некоторые поисковые сервера, такие как Inktomi например, полностью понимают мета-тег robots. Inktomi пройдет по всем страницам сайта если значение данного тега будет «index,follow».

Формат мета-тега Robots

Мета тег robots помещается в тег

html-документа. Формат достаточно прост (регистр букв значения не играет):

<HTML>
<HEAD>
<META NAME="ROBOTS" CONTENT="NOINDEX, NOFOLLOW">
<META NAME="DESCRIPTION" CONTENT="Эта страница …. ">
<TITLE>...</TITLE>
</HEAD>
<BODY>

Значения мета-тега robots

Данному мета-тегу можно присвоить варианта четыре значений. Атрибут content может содержать следующие значения:

index, noindex, follow, nofollow

Если значений несколько, они разделяются запятыми.

В настоящее время лишь следующие значения важны:

Директива INDEX говорит роботу, что данную страницу можно индексировать.

Директива FOLLOW сообщает роботу, что ему разрешается пройтись по ссылкам, присутствующим на данной странице. Некоторые авторы утверждают, что при отсутствии данных значений, поисковые сервера по умолчанию действуют так, как если бы им даны были директивы INDEX и FOLLOW. К сожалению это не так по отношению к поисковому серверу Inktomi. Для Inktomi значения по умолчанию равны «index, nofollow«.

Итак, глобальные директивы выглядят так:

Индексировать всё = INDEX, FOLLOW

Не индексировать ничего = NOINDEX,NOFLLOW

Примеры мета-тега robots:

<META NAME=ROBOTS" CONTENT="NOINDEX, FOLLOW">
<META NAME=ROBOTS" CONTENT="INDEX, NOFOLLOW">
<META NAME=ROBOTS" CONTENT="NOINDEX, NOFOLLOW">

Валидатор robots.

txt
Валидатор Robots.txt

« назад к списку статей

Разрешить или запретить весь или часть вашего веб-сайта

Печальная реальность такова, что большинство веб-мастеров понятия не имеют, что такое файл robots.txt. Робот в этом смысле — «паук». Это то, что поисковые системы используют для сканирования и индексации веб-сайтов в Интернете.

Паук просканирует сайт и проиндексирует все страницы (разрешенные) на этом сайте. Как только это будет завершено, робот перейдет к внешним ссылкам и продолжит индексацию. Именно так поисковые системы находят другие веб-сайты и создают такой обширный индекс сайтов. Они зависят от веб-сайтов, ссылающихся на соответствующие веб-сайты, которые ссылаются на другие и так далее.

Когда поисковая система (или робот, или паук) попадает на сайт, первое, что она ищет, это файл robots. txt. Не забудьте сохранить этот файл в корневом каталоге.

Пример: https://www.hostingmanual.net/robots.txt

Хранение в корневом каталоге гарантирует, что робот сможет найти файл и использовать его правильно. Файл сообщает роботу, что сканировать, а что нет. Эта система называется «Стандарт исключения роботов».

Страницы, которые вы запретили в файле robots.txt, не будут проиндексированы, и пауки тоже не будут их сканировать .

Формат robots.txt

Формат файла robots.txt — особый, но очень простой. Он состоит из строки «User-agent:» и строки «Disallow:».

Строка «User-agent:» относится к роботу. Его также можно использовать для обозначения всех роботов.

Пример того, как запретить всем роботам:

Чтобы запретить всем роботам индексировать определенную папку на сайте, мы будем использовать это:

 Агент пользователя: *
Disallow: /cgi-bin/ 

Для строки User-agent мы использовали подстановочный знак «*», который говорит всем роботам слушать эту команду. Итак, как только паук прочитает это, он будет знать, что /cgi-bin/ вообще не должен индексироваться. Это будет включать все папки, содержащиеся в нем.

Указание определенных ботов также разрешено и в большинстве случаев очень полезно для пользователей, использующих дорвеи или другие способы поисковой оптимизации. Список отдельных ботов позволит владельцу сайта указывать конкретным поисковым роботам, что индексировать, а что нет.

Вот пример ограничения доступа к /cgi-bin/ от Google:

 User-agent: Googlebot
Disallow: /cgi-bin/ 

На этот раз с командой User-agent мы использовали Googlebot вместо команды с подстановочным знаком «*». Эта строка позволяет роботу Google знать, что мы обращаемся именно к нему, и не сканировать эту папку или файл.

Пробелы и комментарии

Пробелы и строки комментариев можно использовать, но они не поддерживаются большинством роботов. При использовании комментария всегда лучше добавлять его в новую строку.

Не рекомендуется:

 Агент пользователя: googlebot #Google Robot 

Рекомендуется:

 Агент пользователя: googlebot
#Google Robot 

Обратите внимание, что в первом случае строка комментария находится на той же строке, на которую указывает #, а затем комментарий. Хотя это нормально и будет принято в большинстве случаев, многие роботы могут не использовать это. Поэтому обязательно используйте пример 2 при использовании комментариев.

В большинстве случаев, если используется пример 1, а робот его не поддерживает, он интерпретирует строку как «googlebot#GoogleRobot». Вместо «googlebot», как мы изначально планировали.

Пробелы означают использование пробела перед строкой для ее комментирования. Это разрешено, но не всегда рекомендуется.

Распространенные имена роботов

Вот несколько самых популярных имен роботов:

  • Googlebot – Google.com
  • YandexBot – Yandex. ru
  • Bingbot – Bing.com

Это лишь некоторые из наиболее распространенных роботов. попадет на сайт в любой момент времени.

Robots.txt Examples

В следующих примерах часто используются команды для файлов robots.txt.

Следующее позволяет всем роботам индексировать весь сайт. Обратите внимание, что команда «Запретить:» пуста; это говорит роботам, что все в порядке.

 Агент пользователя: *
Disallow: 

Следующее указывает всем роботам не сканировать и не индексировать что-либо на сайте. Мы использовали «/» в функции «Disallow:», чтобы указать, что все содержимое корневой папки не должно индексироваться.

 Агент пользователя: *
Disallow: / 

Следующее указывает всем роботам (обозначенным подстановочным знаком в функции «User-agent:») не разрешать индексацию папки cgi-bin, images и загрузок. Он также не позволяет индексировать файл admin.php, который находится в корневом каталоге. В этом случае также можно использовать файлы и папки подкаталогов.

 Агент пользователя: *
Запретить: /cgi-bin/
Запретить: /изображения/
Запретить: /загрузки/
Disallow: admin.php 

Этот список указывает роботу Google не индексировать папку wp-admin.

 Агент пользователя: googlebot
Disallow: /wp-admin/ 

Bad Robots

Мы не можем контролировать, будет ли конкретный паук уважать файл robots.txt. Другими словами, нет никакой гарантии, что паук действительно не зайдет на запрещенную вами страницу. Некоторые боты действительно не уважают это. В основном это маркетинговые сканеры и спамеры. На самом деле, злоумышленники (хакеры), вероятно, посмотрят именно на то, что вы запретили.

Заключение

Дополнительную информацию о файлах robots.txt можно найти на Robotstxt.org. Почти все крупные сайты используют файл robots.txt. Просто введите URL-адрес и добавьте robots.txt в конец, чтобы узнать, использует ли его сайт или нет. Он отобразит их файл robots.txt в виде простого текста, чтобы любой мог его прочитать.

Помните, что файл robots.txt не является обязательным. В основном он используется, чтобы сказать паукам, что ползать, а что нет. Если на сайте все должно быть проиндексировано, файл robots.txt не нужен.

Как использовать Robots.txt — FreeFind.com

Как использовать Robots.txt

Предпочтительный способ предотвращения индексации частей вашего сайта заключается в использовании механизма исключения страниц Центра управления. Это описано в Как исключить страницы из поиска . Вы должны прочитать это «как» в первую очередь. Единственная причина, по которой вам может понадобиться использовать robots.txt файл, если вы хотите, чтобы кто-то еще не использовал эту поисковую систему для индексации вашего сайта.

Содержание Обзор Примеры Ссылка Файл "robots.txt" это текстовый файл , размещенный на вашем сервере, который содержит список роботов и «запрещает» для этих роботов. Каждый запрет запрещает любой адрес, начинающийся с запрещенной строки. от доступа.

Этот учебник не является учебником по веб/html и предполагает, что вы уже знаете как осуществляется процесс «веб-серфинга» (т. е. браузер запрашивает страницу с сервера, который затем возвращает страницу для просмотра), что такое «форма» HTML и как она работает, и что такое ссылка «цель». Если вы не знакомы с этими концепциями, прочтите базовый учебник по web/html.

Обзор

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

http://example.com/mysite/index.html

вам нужно будет иметь возможность создать файл, расположенный здесь:

http://example.com/robots.txt

Если вы не можете получить доступ к корневому каталогу вашего сервера, вы не сможете использовать robots.txt файл, чтобы исключить страницы из вашего индекса.

robots.txt — это файл TEXT (не HTML!) в котором есть раздел для каждого управляемого робота. В каждом разделе есть строка user-agent , которая называет робота, которым нужно управлять, и имеет список «запрещает» и «разрешает». Каждый запрет запрещает любой адрес, начинающийся с запрещенной строки. от доступа. Точно так же каждое разрешение разрешает любой адрес, начинающийся с разрешенной строки. от доступа. Разрешения (запрещено) сканируются по порядку, определяя последнее обнаруженное совпадение. разрешено ли использование адреса или нет. Если совпадений нет вообще, будет использоваться адрес.

Вот пример:

пользовательский агент: FreeFind
запретить: /mysite/test/
запретить: /mysite/cgi-bin/post.cgi?action=reply
запретить: / а

В этом примере следующие адреса будут игнорируется пауком:

http://example.com/mysite/test/index.html
http://example.com/mysite/cgi-bin/post. cgi?action=reply&id=1
http://example.com/mysite/cgi-bin/post.cgi?action=replytome
http://example.com/abc.html

и следующие будут разрешены:

http://example.com/mysite/test.html
http://example.com/mysite/cgi-bin/post.cgi?action=edit
http://example.com/mysite/cgi-bin/post.cgi
http://example.com/bbc.html

Также можно использовать «разрешить» в дополнение к запрету. Например:

пользовательский агент: FreeFind
запретить: /cgi-bin/
разрешить: /cgi-bin/Ultimate.cgi
разрешить: /cgi-bin/forumdisplay.cgi

Этот файл robots.txt предотвращает доступ к каждому адресу cgi-bin из доступного , кроме Ultimate.cgi и forumdisplay.cgi .

Использование разрешений часто может упростить файл robots.txt .

Вот еще один пример, который показывает robots. txt с в нем два раздела. Один для «всех» роботов и один для паука FreeFind:

пользовательский агент: *
запретить: /cgi-bin/

пользовательский агент: FreeFind
запретить:

В этом примере всем роботам, кроме паука FreeFind, будет запрещено доступ к файлам в каталоге cgi-bin . FreeFind сможет получить доступ ко всем файлам (запретить, после которого ничего не будет). означает «разрешить все»).

Примеры

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

Чтобы FreeFind вообще не индексировал ваш сайт:

пользовательский агент: FreeFind
запретить: /

Чтобы FreeFind не индексировал общий мусор карты изображения главной страницы:

пользовательский агент: FreeFind
запретить: /_vti_bin/shtml.exe/

Чтобы запретить FreeFind индексировать тестовый каталог и личный файл:

 пользовательский агент: FreeFind
запретить: /тест/
запретить: private.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *