Понедельник, 29.04.2024, 01:58
Главная Регистрация RSS
Приветствую Вас, Гость
Социальные закладки
Поиск
Главная » Статьи » Мои статьи

Как запретить индексацию с помощью .htaccess

Возникла у меня недавно потребность запретить поисковым системам индексировать один файлик на моем сайте. Чтобы вы голову зря не ломали это не данный сайт для новичков в SEO. А совсем другой. Так вот, когда я столкнулся с проблемой запрета индексации, мне пришлось поломать голову, прежде чем я смог нормально осуществить данный запрет.
 
Главной особенностью было то, что запрет на индексацию нужно было сделать не через прописывание запрета в robots.txt, а с помощью файла .htaccess.
Нужно это было для того, чтобы никто кроме меня не знал, что я запретил...
Запрет с помощью  .htaccess
Для осуществления данного  действия нужно чтобы у вас в корневой папке домена,  например, для этого сайта это будет папка seoneophyte.ru, находился файл .htaccess.
Если у вас такой файл есть -  а его особенность – отсутсвие имени и наличние только расширения, то есть (точка)htaccess, то можно просто внести в него изменения. Если такого файла нет, то его очень просто сделать:  нужно в блокноте создать файлик  htaccess.txt, и переименовать в .htaccess.
Кстати в проводнике windows с этим могут быть проблемы.
Когда вы убедились, что файлик .htaccess есть, в него  просто нужно дописать следующие строки:


 
SetEnvIfNoCase User-Agent "^Googlebot" search_bot
SetEnvIfNoCase User-Agent "^Yandex" search_bot
SetEnvIfNoCase User-Agent "^Yahoo" search_bot


 
Вышеописанные строки для трех основных поисковиков Google, Yandex и Yahoo.
 
Что именно мы прописали в .htaccess для запрета?
Попробую расшифровать написанное на примере Google
SetEnvIfNoCase User-Agent "^Googlebot" search_bot

SetEnvIfNoCase – это мы задаем условия для переменной env
User-Agent – означает какая именно переменная, в данном случае это имя агента или бота поисковой машины
"^Googlebot" собственно это имя этого агента
А  search_bot – это значение переменной
 
Другими словами (по русски) строчка
SetEnvIfNoCase User-Agent "^Googlebot" search_bot
Значит: если на сайт придет бот у которого в имени будет  содержаться слово Googlebot, то такому боту задать значение переменной env= search_bot (пометить его как search_bot)
Запрет других ботов в .htaccess
Вот список других ботов которые могут вас навестить:
 
SetEnvIfNoCase User-Agent "^Aport" search_bot
SetEnvIfNoCase User-Agent "^msnbot" search_bot
SetEnvIfNoCase User-Agent "^spider" search_bot
SetEnvIfNoCase User-Agent "^Robot" search_bot
SetEnvIfNoCase User-Agent "^php" search_bot
SetEnvIfNoCase User-Agent "^Mail" search_bot
SetEnvIfNoCase User-Agent "^bot" search_bot
SetEnvIfNoCase User-Agent "^igdeSpyder" search_bot
SetEnvIfNoCase User-Agent "^Snapbot" search_bot
SetEnvIfNoCase User-Agent "^WordPress" search_bot
SetEnvIfNoCase User-Agent "^BlogPulseLive" search_bot
SetEnvIfNoCase User-Agent "^Parser" search_bot
 
Задаем правило для запрета в  .htaccess
Вот само правило:
 
Order Allow,Deny
Allow from all
Deny from env=search_bot
 
Поясняю:
в строке Order Allow,Deny
Мы указываем порядок доступа, у нас сказано сначала разрешить, а потом запретить
Allow from all – разрешить всем
Deny from env=search_bot – запретить доступ тем, кто помечен флажком search_bot, в данном случае это боты, которые мы перечисляли выше
 
Нужно заметить что такое правило запрещает доступ этим ботам на весь сайт, если мы хотим запретить в .htaccess только определенный файл или группу файлов нужно их уточнить, делается это так:
<FilesMatch "^.*$">
Order Allow,Deny
Allow from all
Deny from env=search_bot
</FilesMatch>
 
То есть все тоже самое, но мы ограничиваем область запрета в FilesMatch
"^.*$" эта комбинация также значит любой файл (^ - начало строки, точка – это любой символ, звезда – любое количество этого символа, то есть сочетание (.*) значит любая комбинация любых символов, а $ -  это конец строки). Поэтому такой комбинацией мы запрещаем в .htaccess доступ к любому файлу.
<FilesMatch "^.*primer\.html$">  -тут мы запрещаем доступ только к файлу primer.html
<FilesMatch "^.*primer.*$">  - запрет к любому файлу, содержащему слово primer
 
Примеры запрета в .htaccess для ботов
 
Запрет на любой файл для ботов:
SetEnvIfNoCase User-Agent "^Yandex" search_bot
SetEnvIfNoCase User-Agent "^Yahoo" search_bot
SetEnvIfNoCase User-Agent "^Googlebot" search_bot
SetEnvIfNoCase User-Agent "^Aport" search_bot
SetEnvIfNoCase User-Agent "^msnbot" search_bot
SetEnvIfNoCase User-Agent "^spider" search_bot
SetEnvIfNoCase User-Agent "^Robot" search_bot
SetEnvIfNoCase User-Agent "^php" search_bot
SetEnvIfNoCase User-Agent "^Mail" search_bot
SetEnvIfNoCase User-Agent "^bot" search_bot
SetEnvIfNoCase User-Agent "^igdeSpyder" search_bot
SetEnvIfNoCase User-Agent "^Snapbot" search_bot
SetEnvIfNoCase User-Agent "^WordPress" search_bot
SetEnvIfNoCase User-Agent "^BlogPulseLive" search_bot
SetEnvIfNoCase User-Agent "^Parser" search_bot
 
<FilesMatch "^.*$">
Order Allow,Deny
Allow from all
Deny from env=search_bot
</FilesMatch>
 
Запрет на файл primer.html для трех основных поисковиков Google, Yandex и Yahoo
SetEnvIfNoCase User-Agent "^Googlebot" search_bot
SetEnvIfNoCase User-Agent "^Yandex" search_bot
SetEnvIfNoCase User-Agent "^Yahoo" search_bot
 
<FilesMatch "^.*primer\.html$">
Order Allow,Deny
Allow from all
Deny from env=search_bot
</FilesMatch>
 
 
Надеюсь вам пригодиться данная информация, у меня ушло очень много времени, чтобы разобрать как запрещать доступ к файлам через переменную в .htaccess
Кстати точно также можно запретить и доступ с определенного ip.
Для этого нужно записать
SetEnvIfNoCase Remote_Addr 123\.123\.123\.123 search_bot
В данном случае ip  =123.123.123.123
 
Удачи!
  

Wordpress поддержка поддержка и продвижение сайтов на Joomla, Yii. Разработка компонентов и расширений

Категория: Мои статьи | Добавил: aligator (23.06.2014)
Просмотров: 1853 | Теги: с помощью .htaccess, индексацию, Как запретить | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Создание сайтов. Разработка дизайна сайтов. Продвижение сайтов. Техническое обслуживание и модернизация веб-сайтов. Полный комплекс услуг по развитию и поддержке интернет-проектов различного уровня сложности.