Фотогалереи

Помощь при использовании сайта

301 редирект на все кроме robots.txt

Купив новый домен который гораздо больше имеет общего с тематикой сайта я озадачился таким вопросом. Как перенести все проиндексированные страницы с одного  домена на другой? На первый взгляд все предельно просто и логично. Делаем точную копию имеющегося сайта (зеркало) на новом домене, ставим серверный 301 редирект со старого на новый и человек или поисковый робот обратившийся по старому адресу будет автоматически перенаправлен на новый адрес. При использовании такого способа вы не теряете посетителей которые заходят по старому адресу (а ведь в поисковиках полное обновление может занять месяцы) и поисковые боты будут довольны. Особенно такой способ с 301 редиректом  "любит" Google Bot и за несколько дней уже перетащил большинство проиндексированных страниц на новый адрес. В случае с Яндексом такой способ не самый лучший, ибо как говорят сеошники процесс переноса индекса будет очень долгим. Для Яндекса более быстрый и приоритетный вариантом будет указание директивы Host в файле robots.txt в которой будет прописан новое доменное имя как основное зеркало. Вся соль в том, что Google не понимает директиву Host и указать ему о смене домена можно только через 301 редирект и подачу заявки в Google Web Masters.

Из всего вышесказанного следствует то, что идеальным способом не потерять проиндексированные страницы в обоих поисковых машинах это установить глобальный редирект на все страницы сайта для Google и оставить доступ Яндекс боту к robots.txt. Сделать это можно через .htaccess с таким содержанием:

 


RewriteEngine On
RewriteCond %{REQUEST_URI} !^/robots\.txt$
RewriteRule ^(.*)$ http://yoursite.ru/$1 [R=301,L]    
<IfModule mod_rewrite.c>
 RewriteEngine on
 RewriteCond %{REQUEST_FILENAME} !-f
 RewriteCond %{REQUEST_FILENAME} !-d
 RewriteRule ^(.*)$ /index.php?q=$1 [L,QSA]

Сохраняем .htaccess,прописываем директиву Host с указанием нового основного зеркала и ждем  YandexBot/3.0; MirrorDetector

4.2
10 votes
Ваша оценка: Нет


Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".
Аватар пользователя admin

Не прошло и недели, а зеркальщик уже тут как тут. Будем посмотреть через сколько произойдет полная склейка старого и нового доменов.

Аватар пользователя anonymous

Вот спасибо за правильный код а то мучался между яндексом и гуглом выбрать не мог)сделал 301 гугл пр передал)убрал редирект пр обнулился 2 домена в поиске)))убрал из за того что ослик яша не мог получить доступ к роботс)))

но ваш вариант спас просто и роботс доступен и 301 пашет!)))надеюсь PR вернется
Счастья тебе!)с уважением Евгений!)

Аватар пользователя admin

Раз в первый раз передался, значит и на второй раз удастся.
Успехов!

Аватар пользователя anonymous

Админ, есть вопросы:

1.Где именно создаётся "сайтмап(карта сайта)", может сервисы имеются? 2.Правильно ли я понял, что "роботс.тииксти" независим, имеется в виду, что для каждого вэб-сайта он свой?
3.Нужен ли 301 редирект если создавать "роботс.тииксти"?
3.1.Что даст их совместное присутствие?
4.Каким языком программирования лучше задать расширение: "Apache .htaccess" или код PHP прописывать в index.PHP. Что лучше?

Спасибо!

Аватар пользователя admin

Шквал вопросов. Попробую ответить на все.
1.Файл sitemap создается в любой директории сайта которая будет Вам удобна. После регистации сайта в поисковых системах Yandex и Google его необходимо указать в инстркментах вэб мастера. Неплохо бы и для пользователей сделать ссылку на карту сайта, но там уже другие требования к этому файлу по части внешнего вида и включеия в него стилей. Не будете же Вы показывать набор ссылок сплошной массой пользователям.

2. Да, robots.txt уникален для каждого сайта. Есть конечно универсальные рецепты для различных CMS (Wordpress, Drupal....etc), на певрое время эти готовые решения вполне пригодятся, а когда появится понимание своих действий -- можно его подредактировать.

3. Конечно же не обязательо. В моем случае это потребовалось по объясненным в статье причинам. Если Вы не ставите подобных задач, то не надо.
3.1. Читай выше

4. Тут я не смогу ответить конкретно, но на мой взгляд лучше через Apache, потому как эти правила работают на уровне сервера. PHP обрабатывает запросы которые отдаются веб сервером и работает уровнем выше.

Аватар пользователя anonymous

Спасибо за рабочий код! С вашей помощью решил вопрос за 2 минуты.
Успехов и профессионального роста.
Федор