В данной статье хотелось бы обсудить подготовку сайта, созданного на платформе 1С-Битрикс, к поисковому продвижению, а также рассмотреть вопросы переноса старого сайта на новый домен и немного затронуть тему правильного создания файла robots.txt. Эта статья ни в коем случае не претендует на полноту раскрытия темы продвижения, но может стать хорошим подспорьем веб-мастерам.
Склейка доменов с www и без www
Проблема:
Нередко случается ситуация, когда сайт доступен по адресу с www и без www. Поисковые системы воспринимают это как два разных URL и, соответственно, присваивают этим URL (в зависимости от внешних ссылок) разные характеристики PageRank и Индекса Цитирования. Как этого избежать? Необходимо сделать так, чтобы при обращении к сайту по адресу без www (
HTTP/1.1 301 Moved Permanently означает, что запрошенный документ был окончательно перенесен на новый URI, указанный в поле Location заголовка.
Решение:
В корне сайта на 1С-Битрикс лежит файл .htaccess
В данном файле есть следующий код:
<IfModule mod_rewrite.c> Options +FollowSymLinks RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-l RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !/bitrix/urlrewrite.php$ RewriteRule ^(.*)$ /bitrix/urlrewrite.php [L] RewriteRule .* - [E=REMOTE_USER:%{HTTP:Authorization}] </IfModule> |
Между <IfModule mod_rewrite.c> </IfModule> необходимо вставить следующий код:
RewriteCond %{HTTP_HOST} !^www\. RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [L,R=301] |
<IfModule mod_rewrite.c> Options +FollowSymLinks RewriteEngine On # редирект host.ru -> www.host.ru RewriteCond %{HTTP_HOST} !^www\. RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [L,R=301] # редирект www.host.ru -> host.ru RewriteCond %{HTTP_HOST} ^www. host.ru $ [NC] RewriteRule ^(.*)$ http://host.ru $1 [R=301,L] # подключение ЧПУ битрикса RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-l RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !/bitrix/urlrewrite.php$ RewriteRule ^(.*)$ /bitrix/urlrewrite.php [L] RewriteRule .* - [E=REMOTE_USER:%{HTTP:Authorization}] </IfModule> |
Заголовок сервера www.atrix-studio.ru
Теперь при вводе адреса сайта без www, посетитель будет перенаправлен на адрес с www, а поисковый робот получит заголовок "301 Moved Permanently".
Дублирующиеся страницы на сайте
Проблема:
Иногда на сайте присутствуют повторяющиеся страницы вида:
Решение:
Для решения проблемы с дубликатами необходимо также дописать в файл .htaccess следующие строки:
RewriteCond %{REQUEST_URI} ^(.*)/$ RewriteRule .* - [L] RewriteCond %{ENV:REDIRECT_STATUS} 200 RewriteRule .* - [L] RewriteCond %{REQUEST_METHOD} =GET RewriteCond %{REQUEST_URI} ^(.*)/index.php$ RewriteRule ^(.*)$ %1/ [R=301,L] |
<IfModule mod_rewrite.c> Options +FollowSymLinks RewriteEngine On # редирект host.ru -> www.host.ru RewriteCond %{HTTP_HOST} !^www\. RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [L,R=301] # подключение ЧПУ битрикса RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-l RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !/bitrix/urlrewrite.php$ RewriteRule ^(.*)$ /bitrix/urlrewrite.php [L] RewriteRule .* - [E=REMOTE_USER:%{HTTP:Authorization}] # редирект /news/123 -> /news/123/ RewriteCond %{REQUEST_URI} ^(.*/[^/\.]+)$ RewriteRule ^(.*)$ http://%{HTTP_HOST}/$_1/ [R=301,L] RewriteCond %{REQUEST_URI} ^(.*)/$ RewriteRule .* - [L] # редирект /news/index.php -> /news/ RewriteCond %{ENV:REDIRECT_STATUS} 200 RewriteRule .* - [L] RewriteCond %{REQUEST_METHOD} =GET RewriteCond %{REQUEST_URI} ^(.*)/index.php$ RewriteRule ^(.*)$ %1/ [R=301,L] </IfModule> |
Данная строка запрещает индексировать страницы /index.php поисковым роботам!
ROBOTS.TXT - для 1С-Битрикс
На многих сайтах отсутствует файл robots.txt, который очень важен для поисковых систем. Индексирование сайта начинается именно с данного файла. О нем есть очень много информации в сети, но все же стоит обратиться к пояснениям от самих поисковых систем: Яндекс и Google. Здесь вы найдете множество рекомендаций и полезной информации.
За годы работы с 1С-Битрикс мы собрали файл robots.txt, который берем за эталон. Он не позволяет индексировать страницы, которые являются служебными или просто дублируют уже имеющийся контент. Вы можете скачать данный файл robots.txt с нашего сайта.
Переезд сайта со старого домена на новый
В нашей компании случались ситуации, когда приходили клиенты, у которых были уже сайты с доменом и им нужно было сделать более функциональный сайт. При переделке сайта выяснялось, что домен зарегистрирован не на владельца компании, а на старого разработчика сайта, т.е. юридически владелец сайта на доменное имя не имеет права.
Для решения этой проблемы мы поступаем следующим образом. Во первых, регистрируем новый домен и разворачиваем новый сайт. Во вторых, на старом сайте делаем так, чтобы при обращении к старому домену срабатывал 301-редирект, но за исключением файла robots.txt, так как в robots.txt нам необходимо прописать новый домен.
Итак, в файле .htaccess старого домена пишем следующее:
<FilesMatch "robots.txt$"> RewriteEngine off </FilesMatch> <IfModule mod_rewrite.c> Options +FollowSymLinks RewriteEngine on RewriteRule (.*) http://ww.newsite.ru/$1 [R=301,L] </IfModule> |
User-Agent: * Disallow: Host: www.newsite.ru |