За последние 24 часа нас посетили 21848 программистов и 1007 роботов. Сейчас ищут 656 программистов ...

301 редирект

Тема в разделе "PHP для новичков", создана пользователем SkazochNick, 20 июн 2016.

Метки:
  1. SkazochNick

    SkazochNick Новичок

    С нами с:
    20 июн 2016
    Сообщения:
    4
    Симпатии:
    0
    Доброго дня всем.
    Сайт перенесли на другой домен. На старом поставили заглушку. Встал вопрос - настроить 301 редирект таким образом, чтобы обычные пользователи видели эту заглушку, а поисковые роботы перенаправлялись на новый сайт. Подскажите, как это сделать правильно
    Спасибо
     
  2. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.902
    Симпатии:
    969
    Не надо так делать. Всем надо показывать одинаковый контент. Поисковая система может зайтить под "простым пользователем" и обнаружить, что поисковому роботу и "простому пользователю" выдается разное содержимое. За такую провинность ресурс может быть удален из поискового индекса.

    Можно выдать страницу на старом домене, добавив канонический адрес на новом домене. Ну а пользователю показать какой-нибудь текст о новом размещении ресурса. Естественно этот текст нужно будет спрятать от индексации ботами. Им будет канонический урл, а человекам - текст.
     
    denis01 нравится это.
  3. SkazochNick

    SkazochNick Новичок

    С нами с:
    20 июн 2016
    Сообщения:
    4
    Симпатии:
    0
    Все так, но человеку надо, очень просит. Можете подсказать, как это сделать?
     
  4. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.902
    Симпатии:
    969
    Давайте попробую.

    Вводные. Есть сайт example.ru. Его надо перенести на example.com.
    1. К уже существующему виртуальному хосту веб-сервера example.ru добавляем алиас example.com. Это если пофигу на учет трафика конкретного хоста.
    или
    1. Создаем виртуальный хост example.com ссылающийся на папку хоста example.ru.
    Это действие даст нам ответ одинаковыми страницами на запросы к обоим хостам.
    Оба этих первых пункта предполагают, что сайты остаются физически на одном сервере/хостинге.

    2. Добавляем канонические адреса в исходный код страниц. Ну это зависит от того, какая система управляет содержимым сайта. Могут быть варианты. Но в общем в исходном коде страниц должно появиться <link rel="canonical" href="http:/example.com/some-url" />. При запросах http://example.ru/some-url и http://example.com/some-url будут выдаваться одинаковые по содержимому ресурсы, но канонический урл подскажет поисковику какой из ресурсов главный, а какой - клон. В нашем случае главным помечается ресурс на новом домене.

    3. Придумать кусочек php-кода, который по условию "старый хост" добавить в исходный код страницы кусок текста, например:
    PHP:
    1. <?php if ('example.ru' == $_SERVER['SERVER_NAME']): ?>
    2. <noindex><div class="moved-message">This page has been moved to <a href="http://example.com/some-url" rel="nofollow">http://example.com/some-url</a></div></noindex>
    3. <?php endif; ?>
    ну и через стили как-нибудь это красиво оформить. Замечу что тег noindex придуман и понимается только Яндексом, поэтому другие ПС могут добавить содержимое блока в поисковый индекс.
    Или можно
    3. Придумать кусочек js-кода, который врисует в страницу старого хоста блок с сообщением о новом хосте.
    Короче много всяких интересных вариантов можно придумать.

    4. Естественно, желательно зарегистрировать оба хоста в инструментах веб-разработчиков, которые есть у всех уважающих себя ПС. Ну и уважающие себя ПС так же дадут возможность через эти инструменты выбрать из двух доменов главный и даже "переехать" со старого домена на новый.
     
  5. SkazochNick

    SkazochNick Новичок

    С нами с:
    20 июн 2016
    Сообщения:
    4
    Симпатии:
    0
    Вот как я делал раньше
    Код (Text):
    1. function isBot(&$botname = ''){
    2.  
    3.   $bots = array(
    4.     'rambler','googlebot','aport','yahoo','msnbot','turtle','mail.ru','omsktele',
    5.     'yetibot','picsearch','sape.bot','sape_context','gigabot','snapbot','alexa.com',
    6.     'megadownload.net','askpeter.info','igde.ru','ask.com','qwartabot','yanga.co.uk',
    7.     'scoutjet','similarpages','oozbot','shrinktheweb.com','aboutusbot','followsite.com',
    8.     'dataparksearch','google-sitemaps','appEngine-google','feedfetcher-google',
    9.     'liveinternet.ru','xml-sitemaps.com','agama','metadatalabs.com','h1.hrn.ru',
    10.     'googlealert.com','seo-rus.com','yaDirectBot','yandeG','yandex',
    11.     'yandexSomething','Copyscape.com','AdsBot-Google','domaintools.com',
    12.     'Nigma.ru','bing.com','google'
    13.   );
    14.   foreach($bots as $bot)
    15.     if(stripos($_SERVER['HTTP_USER_AGENT'], $bot) !== false){
    16.       $botname = $bot;
    17.       return true;
    18.     }
    19.   return false;
    20. }
    21.  
    22. if( !isBot() ) {
    23. exit();
    24. }
    25. else {
    26.     header('HTTP/1.1 301 Moved Permanently');
    27.     header('Location: http://xn----7sbbbnb3aqdefc1bb7ck6l8c.ru.com');
    28.    exit();
    29. }
    Проверял редирект с помощью расширения Modify Header
    Ранее все работало, теперь, почему-то, нет

    Это индексный файл старого домена
     
  6. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.902
    Симпатии:
    969
    А что именно не работает теперь?
     
  7. SkazochNick

    SkazochNick Новичок

    С нами с:
    20 июн 2016
    Сообщения:
    4
    Симпатии:
    0
    Раньше я проверял так - включаю расширение и браузер работает как поисковый бот, то есть, при заходе на старый сайт он переходит переходит на новый. Стало быть, редирект работает нормально. Когда расширение выключено, браузер работает как обычный пользователь - показывает заглушку. Сейчас же даже при включенном расширении перехода нет, показывается заглушка
    Старый сайт - http://дубликаты-алкоголя.su/
    Новый - http://дубликаты-алкоголя.ru.com/
     
  8. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.230
    Симпатии:
    1.715
    Адрес:
    Молдова, г.Кишинёв
    Такое легально продавать?
     
  9. Basilio

    Basilio Случайный прохожий

    С нами с:
    6 апр 2016
    Сообщения:
    191
    Симпатии:
    54
    Ну во-первых - я так и не нашел на сайте, а алкоголь-то там вообще есть в этой продукции?
    Вопрос легальности будет состоять из двух частей:
    1. Имеет ли продукция акцизную марку? - этот момент будет определять легальность данного бизнеса. Судя по способам оплаты и схеме работы - он нелегальный.
    2. Взаимоотношения с правообладателями оригинальных торговых знаков - тут все совершенно очевидно и нет смысла обсуждать. Первый же судебный иск отправит рентабельность данного предприятия в глубокий минус без шансов на восстановление.
    По совокупности - явно нелегально.