Этой статьей я хочу обратить Ваше внимание на внутреннюю оптимизацию сайта. Да, да. В погоне за PR и ТиЦ многие разработчики забывает об этом важном пункте в продвижении своего сайта. Плюсом внутренней оптимизации является ее «одноразовость» некоторых пунктов. Настроив, вначале своего пути по просторам интернета, можно будет о них забыть И так, начнем с казалось бы не заметного txt файла в основной директории wordpress’a – robots.txt (да, да обязательно с маленькой буквы!)
После написания где-то половины текста по каналу Вести 24 передали сообщение, о том, что в Яндаксе в открытом доступе можно узнать конфиденциальную информацию о пользователях ряда интернет-магазинов. Пользователи могли, например, узнать адрес проживания пользователя. В Яндекс ответили, что мол случился сбой, а сайтам рекомендуется пересмотреть свой robots.txt файл, т.к. при правильной настройки подобного случая не произошло бы
Наверное, я не открою Америку сказав, что для индексации Вашего сайта очень важен файл robots.txt В двух словах для чего этот файл: управление индексацией Вашего сайта. Так теперь языком эльфов)) Файл robots.txt специально создан для поисковых ботов, которые индексируют сайты. В файл записаны правила сканирования Вашего блога/сайта, т.е. robots.txt «говорит» ботам, где можно индексировать сайт. Например, зачем googlebot’у знать информацию административного отдела? Или формы входа? В первую очередь бот ищет данный txt файл, и прочитав его действует в рамках Ваших условий, а точнее запретов.
Для запрета индексации в Яндексе и Гугле одной единственной страницы, удобно использовать мета-тег Robots. Файл robots.txt предназначен для настройки глобальной индексации.
В общем, хватит ходить около темы, приступим к составлению и обзору robots.txt
Внимание! Администрация предупреждает, не бывает идеальных robots.txt файлов! Для каждого проекта необходим индивидуальный подход!
Совет: если Ваш сайт на WordPress или другой CMS, то в принципе сильных различий в robots.txt у сайтов нет. Вы можете оценить файлы своих конкурентов и релевантных по теме Вашему сайту/блогу, добавив к домену /robots.txt Например, мой robots файл можно посмотреть по ссылке – gtalk.kz/robots.txt Но будьте придельно внимательны!
Правила составления robots.txt
Если Вы когда-нибудь открывали файл, то наверное догадываетесь как его составить.
Общая схема следующая:
Кому адресовано правило
Хотя бы одно правило
Пустая строка
Или
<поле>:<пробел><значение><пробел>
<поле>:<пробел><значение><пробел>
Или
User-agent: *
Disallow: /
Теперь подробнее. В первую очередь необходимо выбрать, кому предназначено правило. Выполнение данной функции осуществляется директивой User-agent. После данного поля идет название бота, либо «*» – следующие правила для всех ботов. Неполный список поисковиков и названия их ботов:
Google http://www.google.com Googlebot
Yahoo! http://www.yahoo.com Slurp или Yahoo! Slurp
AOL http://www.aol.com Slurp
MSN http://www.msn.com MSNBot
Live http://www.live.com MSNBot
Ask http://www.ask.com Teoma
Яндекс http://www.ya.ru Yandex
Рамблер http://www.rambler.ru StackRambler
Мэйл.ру http://mail.ru Mail.Ru
Aport http://www.aport.ru Aport
Disallow – запрет индексирования файла, директории и т.д. Противоположной инструкцией disallow является allow (понимают не все боты!) – googlebot понимает, Yandex – нет.
Думаю, по примеру все встанет на свои места:
- Запретить всем ботам индексировать сайт. Полное закрытие сайта от поисковиков.
- User-agent: *
Disallow: / - Индексировать весь сайт. Противоположность пункту 1
- User-agent: *
Disallow: - Индексировать сайт может только googlebot, запрещаем Яндексу
- User-agent: googlebot
Disallow:User-agent: Yandex
Disallow: /
Между правилами для разных ботов оставляйте пустую строку!
- Закрыть директории от всех ботов: wp-includes, wp-admin и файл wp-login.php в основной директории сайта.
- User-agent: *
Disallow: /wp-includes/
Disallow: /wp-admin/
Disallow: / wp-login.php - Запрет индексации директории «trackback», а так же все файлы и директории, начинающиеся с символами «trackback»
- User-agent: *
Disallow: /trackback - Запрет индексации файлов начинающихся с символов feed и имеют разный путь к файлу и/или директории:
- User-agent: *
Disallow: */ feed
Символ «*» означает любую (в том числе пустую) последовательность символов.
Директива Host поддерживается только Яндексом и сообщает роботу о том, какое из двух зеркал сайта главное – с www или без. Используется для склеивания доменов. Формат записи:
Обычно пишут, что Так неправильно:
User-agent: *
Disallow: /css/
Host: www.example.com
А вот так – правильно: (добавлять в правилах для Яндекса)
User-agent: *
Disallow: /css/
User-agent: Yandex
Disallow: /css/
Host: www.example.com
Я бы так не сказал, yandex все же находит параметр Host. Но лучше не экспериментировать на работающем сайте))
Адрес сайта для директивы Host указывается БЕЗ http://.
И на последок, изучения инструкций. Обязательно добавьте Sitemap. Оформление происходит следующим образом:
User-agent: *
Disallow:
User-agent: Yandex
Disallow: /
Sitemap: http://gtalk.kz/sitemap.xml
Также советую:
- Не писать комментарии в файле robots.txt:
- Соблюдайте стиль! Не пишите лишнего! Используйте вместо USER-AGENT: GOOGLEBOT такой вариант: User-agent: googlebot
- По стандарту инструкция Disallow является обязательной.
- Не добавляйте правило, если не уверены в нем!
- Форму записи Disallow: gtalk – Yandex не понимает.
- Следите за символами!
- Удаление из индекса файл с именем gtalk и соответствующей директории
User-agent: *
Disallow: /gtalk
- Disallow: /wp-content/ #а здесь комментарий, к чему?
- Удаление из индекса директории gtalk
User-agent: *
Disallow: /gtalk/
Ну и теперь Вам не составит труда разобраться в приведенных примерах ниже.
Теперь рассмотрим несколько реальных robots.txt
Обзор моего robots.txt файла.
Думаю понятно, что необходимо закрыть индексацию от мусора, поисковикам это не к чему. Например, админка, динамические страницы(/*?*), трекбеки и т.д. Естественно, добавил Host после правил для Яндекс бота, это необязательно, но я за красоту и чистоту кода:) и ссылка Sitemap для лучшей индексации сайта Также я добавил Allow для моих картинок. Думаю индексировать картинки все же стоит.
User-agent: *
Disallow: /wp-login.php
Disallow: /wp-register.php
Disallow: /trackback
Disallow: */trackback
Disallow: */feed
Disallow: /*?*
Disallow: /wp-content/
Disallow: /wp-admin/
Disallow: /wp-includes/
Disallow: /xmlrpc.php
Allow: /wp-content/uploads/
User-agent: Yandex
Disallow: /wp-login.php
Disallow: /wp-register.php
Disallow: /trackback
Disallow: */trackback
Disallow: */feed
Disallow: /*?*
Disallow: /wp-content/
Disallow: /wp-admin/
Disallow: /wp-includes/
Disallow: /xmlrpc.php
Allow: /wp-content/uploads/
Host: gtalk.kz
Sitemap: http://gtalk.kz/sitemap.xml
Файл robots.txt для joomla
Думаю, прочитав все вышеописанное, Вы сможете разобраться здесь, считайте это домашним заданием;)
Стандартный файл joomla
В принципе очень неплохо продумали разработчики, учитывая, что в WordPresse robots.txt вообще отсутствует))
User-agent: *
Disallow: /administrator/
Disallow: /cache/
Disallow: /components/
Disallow: /images/
Disallow: /includes/
Disallow: /installation/
Disallow: /language/
Disallow: /libraries/
Disallow: /media/
Disallow: /modules/
Disallow: /plugins/
Disallow: /templates/
Disallow: /tmp/
Disallow: /xmlrpc/
Но все же я не удержался и внес изменения.
Мой вариант для joomla:
User-agent: *
Disallow: /administrator/
Disallow: /cache/
Disallow: /components/
Disallow: /includes/
Disallow: /language/
Disallow: /libraries/
Disallow: /media/
Disallow: /modules/
Disallow: /plugins/
Disallow: /templates/
Disallow: /tmp/
Disallow: /xmlrpc/
User-agent: Yandex
Disallow: /administrator/
Disallow: /cache/
Disallow: /components/
Disallow: /includes/
Disallow: /language/
Disallow: /libraries/
Disallow: /media/
Disallow: /modules/
Disallow: /plugins/
Disallow: /templates/
Disallow: /tmp/
Disallow: /xmlrpc/
Host: gtalk.kz
Sitemap: http://gtalk.kz/тут_зависит_от_компонента.xml
По возможности добавьте еще один sitemap. Советую использовать компонет Xmap – наверное, одно из самых популярных.
Обратите свое внимание!
Полезная информация: http://robotstxt.org.ru/
http://robotstxt.org.ru/robotstxterrors – часто встречающиеся ошибки!
Обзор robot.txt файлов блоггеров.
Теперь небольшой поучительный обзор. Бытует такое мнение, что robots.txt похоже у многих, поэтому достаточно скопировать и все. Давайте посмотрим Все блоги/сайты на платформе WordPress.
Блог Вайлдомэна – wildo.ru
User-agent: *
Disallow: /wp-login.php
Disallow: /wp-register.php
Disallow: /xmlrpc.php
Disallow: /wp-admin/
Disallow: /wp-includes/
Disallow: /wp-content/
Disallow: /trackback/
Disallow: /feed/
Disallow: /comments/
Disallow: */trackback/
Disallow: */feed/
Disallow: */comments/
Disallow: /?feed=
Allow: /wp-content/uploads/
Не мне ему советовать, но я бы пересмотрел политику файла robots.txt, или это сделано специально))
Чувак просто забил на Яшу, либо сделал это по другому, кто знает. Один из не многих, кто пользуется Allow, и открыл доступ к картинкам своего блога.
Следующий файл меня особо порабовал:
Блог Терехова.
User-agent: * Disallow: Sitemap: http://www.terehoff.com/sitemap.xml.gz
Да, да, друзья, в одну строку. В принципе, ставить весь сайт на индексацию вряд ли разумно, не советую делать Вам так, и согласитесь так выглядит куда приятней:
User-agent: *
Disallow:
Sitemap: http://www.terehoff.com/sitemap.xml.gz
Sitemap: http://www.terehoff.com/sitemap.xml
Следующий пример блога Димокса – dimox.name
Что отсюда нужно вынести для себя? Например, строчка 7: Disallow: /download-manager.php – запрет на сканирования файла download-manager.php, отвечает этот файл за скачивания с блога Димокса. Что значит Disallow: /jexr/ честно не в курсе. Но похоже там какие-то важные, либо личные файлы:)
User-agent: *
Disallow: /wp-includes/
Disallow: /wp-admin/
Disallow: /wp-login.php
Disallow: /wp-register.php
Disallow: /xmlrpc.php
Disallow: /download-manager.php
Disallow: /*comment-page-*
Disallow: /*&cp=*
Disallow: /jexr/
User-Agent: Yandex
Disallow: /wp-includes/
Disallow: /wp-admin/
Disallow: /wp-login.php
Disallow: /wp-register.php
Disallow: /xmlrpc.php
Disallow: /download-manager.php
Disallow: /*comment-page-*
Disallow: /*&cp=*
Disallow: /jexr/
Host: dimox.name
Sitemap: http://dimox.name/sitemap.xml
Ну и в конце для закрепления, что такое хорошо и что такое плохо в примерах
Неправильно | Правильно |
ROBOTS.TXTRobots.txtrobot.txt | robots.txt |
http://gtalk.kz/wp-include/robots.txt
http://ftp.gtalk.kz/robots.txt http://gtalk.kz/Robots.txt |
http://gtalk.kz/robots.txt
http://www.gtalk.kz/robots.txt http://gtalk.kz:80/robots.txt |
User-agent: / Disallow: Yandex |
User-agent: Yandex Disallow: / |
User-agent: / Disallow: Yandex, * |
User-agent: * Disallow: /User-agent: Yandex Disallow: / |
Disallow: /js/ /css/ /images/ | Disallow: /js/ Disallow: /css/ Disallow: /images/ |
Host: http://www.gtalk.kz/ | Host: www.gtalk.kz (только для Yandex’a) |
Спасибо! на счет картинок я вот тоже думаю, что их стоит открыть для робота
не за что, но будьте внимательны! Ваши картинки могут позаимствовать, так что решать Вам;)
Думаю что поисковикам НЕОБХОДИМО открывать доступ с дирикториями с картинками, т.к. и яндекс и Гугл могут вести поиск только по картинкам, а это еще один источника трафика…
именно это я и сделал))
Disallow: /installation/
думаю это необязательно, и sitemap отделить строчкой пустой стоитПример моего робот.тхт
User-agent: *
Disallow: /administrator/
Disallow: /components/
Disallow: /includes/
Disallow: /installation/
Disallow: /language/
Disallow: /libraries/
Disallow: /media/
Disallow: /modules/
Disallow: /plugins/
Disallow: /templates/
Disallow: /tmp/
Disallow: /xmlrpc/
Host: redbat.ru
Sitemap: http://redbat.ru/index.php?option=com_xmap&sitemap=1&view=xml
Disallow: /*?* Это мне не понятно. Какие динамические страницы? Я думал, что это всё индексировать запрещает, по крайней мере так должно быть, но у блоггеров такое есть и я поставил, только не понимаю как оно действует.
Пример, на WordPresse:
/post.php?post=00000&action=edit
Зайдите на вкладку Все записи и посмотрите ссылку, в которой Вы редактируете свою статью. Это один из примеров динамической веб-страницы.Теперь как?
Динамическую страницу понял =) Но откуда она может попасть роботу “в глаза” не очень. И в масках ‘?’ обычно означает один любой символ, здесь должен обозначать сам себя, ибо иначе любая страница будет подпадать под маску. Правильно понимаю?
Если бот имеет доступ к всему сайту, то и любая страница соответственно может попасть “в глаза”, динамических страниц ведь много. Знак ? обозначает знак вопроса=), это не есть спец символ в robots.txt. Я про него вообще не писал. Звездочки вокруг него обозначают любую последовательность символов, (это спец символ): например
edit-comments.php?comment_status=alll