Четверг, 25.04.2024, 13:48
Главная Регистрация RSS
Приветствую Вас, Гость
Новости
Статистика


Онлайн всего: 1
Гостей: 1
Пользователей: 0
Главная » Статьи » Статьи других авторов

301 Редирект: склейка и перенос сайтов на новый домен (UCOZ, PHP, ASP, .htaccess...)

301 Редирект склейка и перенос сайтов на новый домен UCOZ PHP ASP htaccess

Простой редирект (в файле .htaccess или httpd.conf для Apache):

Redirect 301 / http://www.newsite.com/new.htm

где: Redirect 301 - это инструкция, говорящая что страница перемещена / - означает, что все с верхнего уровня сайта, включая все подкаталоги, будет переадресовано http://www.newsite.com/new.htm - новая страница или сайт (не забывайте поставить последний "/", если переадресация идет на сайт).

Чтобы переадресовать только страницу, сохранив PR старой страницы:

Redirect 301 /old/oldsite.htm http://www.newsite.com/new.htm

где: /old/oldsite.htm - путь и имя старой страницы

Аналогичный синтаксис для переадресации сайта:

RedirectPermanent / http://www.newsite.com/

Пример переадресации каталога:

RedirectPermanent /old-directory http://www.domain.com/new-directory/

Например, зашедших в test переадресуем на www.test.com, остальных на enter.test.com (порядок следования записей важен):

Redirect permanent /test http://www.test.com/

Redirect permanent / http://enter.test.com/

Примечание: для моих целей (изменение домена) хватило первого варианта простого 301 редиректа.

Использование mod_rewrite (прописывается в файле .htaccess):

Ставшая классической задача слияния имена сайта с www и без него, решается так:

Options +FollowSymLinks

RewriteEngine on

RewriteCond %{HTTP_HOST} ^yoursite\.com

RewriteRule ^(.*)$ http://www.yoursite.com/$1 [R=permanent,L] .

или альтернативный синтаксис:

Options +FollowSymLinks

RewriteEngine On

RewriteCond %{HTTP_HOST} ^domain\.com$ [NC]

RewriteRule ^(.*)$ http://www.domain.com/$1 [R=301,L]

Обозначение [R=301,L] означает: перенаправить клиента и отправить ему код статуса 301 (R=301) и сделать это правило последним (L).

Редирект старого домена на новый:

Options +FollowSymLinks

RewriteEngine on

RewriteRule (.*) http://www.newdomain.com/$1 [R=301,L]

Например, если необходимо чтобы вместо rewrite.htm загружался файл rewrite.html, добавьте в .htaccess:

RewriteEngine on

RewriteBase /

RewriteRule ^rewrite\.htm$ rewrite.html [R=permanent]

Для замены всех .htm файлов .html файлами:

RewriteEngine on

RewriteBase /

RewriteRule ^(.*)\.htm$ $1.html [R=permanent]

 

Редирект на PHP

<?php

header("HTTP/1.1 301 Moved Permanently"); header("Location: http://www.newdomain.ru/newdir/newpage.htm"); exit(); ?>

Лучше указать HTTP/1.1, так как более старые не поддерживают виртуальный хостинг. Не забудьте, что до вызова header, ничего не должно выводиться (например, echo или print). Поэтому этот код лучше ставить в начало php-скрипта. Более полный вариант php редиректа с сохранением передаваемой страницы и параметров вызова:

$ref=$_SERVER['QUERY_STRING']; if ($ref!='') $ref='?'.$ref; header('HTTP/1.1 301 Moved Permanently'); header('Location: http://newdomain.com/'.$ref); exit(); ?>

Редирект на ASP

<%@ Language=VBScript %><%Response.Status="301 Moved Permanently" Response.AddHeader "Location", "http://www.new-url.com" response.end%>

<%@ Language=VBScript %><% Response.Status="301 Moved Permanently" Response.AddHeader "Location", "http://www.new-url.com" response.end %>Редирект на ASP.NET

<script runat="server"> private void Page_Load(object sender, System.EventArgs e) { Response.Status = "301 Moved Permanently"; Response.AddHeader("Location","http://www.new-url.com"); }</script>

Редирект на ColdFusion

<.cfheader statuscode="301" statustext="Moved permanently">

<.cfheader name="Location" value="http://www.new-url.com">

Редирект с помощью meta refresh

<meta http-equiv='refresh' content='0; url=http://newdomain.com'>

где0 - задержка переадресации в секундах, newdomain.com -страница, куда переадресуем. Некоторые старые браузеры не поддерживают meta refresh со значением 0, для совместимости можно установить ненулевой значение, хотя, на мой взгляд это уже не актуально. Такой редирект не сможет склеить ваши сайты (с www и без) и передать PR, так как игнорируется поисковыми системами. Он возвращает код 200 OK, что соответствует обычной странице. Эта техника популярна у спамеров, поэтому ее стоит применять только для страниц, которые не будут индексироваться.

Редирект с помощью JavaScript

Варианты переадресации на JavaScript чаще реализуются с использованием функции setTimeout('функция', задержка). Например, автоматически сделать Click на кнопке "Submit" формы "searchform" через 0.1 сек после загрузки кода:

setTimeout('document.forms["searchform"].Submit.click()', 100);

На кнопку "Submit" можно повесить любое действие, например, открыть новый url в этом окне. Кстати такое редиректы чаще встречаются при организации Дорвеев (DorWay) - браузер Пользователя будет переадресован на другую страницу, а поисковый робот, который "не понимает" JavaScript, будет индексировать эту страницу, недоступную пользователю. На ней дорвейщики размещают текст, напичканный "нужными" ключевыми словами. Чтобы просто переадресовать на другую страницу можно вставить после один из вариантов кода на JavaScript:

  • location=http://www.newdomain.com;
  • document.location.href=http://www.newdomain.com;
  • window.location.reload(http://www.newdomain.com);
  • document.location.replace(http://www.newdomain.com);

     

В последнем случае уже нельзя будет вернуться на страницу выполнившую переадресацию, так как ее адрес стирается из history, что нередко и нужною. Если нужна задержка по времени, можно оформить location="http://www.newdomain.com"; в виде функции и вставить ее в setTimeout('функция()', задержка_в_мсек); Редирект на JavaScrupt не является 301 редиректом и не передаст PR страницы, не сможет обеспечить ее склейку.

Редирект в  UCOZ

Осуществим всего тремя путями, поскольку ЦМС не поддерживает исполняемых на сервере команд, а также запрещает изменять файл .htaccess

  1. Редирект с помощью JavaScript описанный выше;
  2. Редирект "meta refresh" описанный выше. При переносе домена в системе УКОЗ может возникнуть ошибка постоянного обновления страницы, которая возникает из-за идентичного содержимого оригинального укозовского и купленного домена, дабы избежать ее используем следующий штатный способ...
  3. При обычном переносе сайта на купленный домен устанавливаем галочку "Автоматически перенаправлять со стандартного домена на прикрепленный", которая находится в административной панели управления сайтом: Настройки > Общие настройки.

     

Отметим дополнительно некоторые особенности редиректов:

  1. Методы редиректа с .htaccess работают только на Linux серверах, имеющих Apache с включенным модулем Mod-Rewrite.
  2. Использование .htaccess создает дополнительную нагрузку на сервер Apache, более эффективно прописывать те же команды в его конфигурационном файле hpptd.conf, но, как правило, к нему нет доступа у вебмастера.
  3. 301 редирект, позволяет сберечь трафик и передать PR страницы для поисковых систем (для Google точно).
  4. Процесс склейки и передачи PR занимает длительное времени - до нескольких месяцев и также зависит от поисковой системы, поэтому не удаляйте старую страницу или сайт, пока не произойдет окончательный перенос.
  5. Некоторые поисковые системы требуют для склейки сайтов дополнительных настроек, например, для Яндекса нужно дополнительно прописывать robots.txt

Заключение

Безопасный способ редиректа старых страниц на новые или старого сайта на новый адрес, с сохранением позиций в поисковых системах, заключается в использование 301 редиректа, который также позволит вам передать старый Page Rank страницы на новый сайт. Более подробно про mod_rewrite можно прочитать на: http://www.engelschall.com/pw/apache/rewriteguide/

http://www.apache.org./docs/mod/mod_rewrite.html

<Проверить корректность редиректа и других возвращаемых заголовков, можно, например, здесь: http://www.rexswain.com/httpview.html

Автор: Сергей Брундасов

Категория: Статьи других авторов | Добавил: Админ (26.11.2015)
Просмотров: 888 | Теги: домены, сайты, редиректы, htaccess | Рейтинг: 0.0/0

html-cсылка на публикацию
BB-cсылка на публикацию
Прямая ссылка на публикацию

Самые популярные записи на сайте:

Катя Самбука - Сказка (видеоклип и слова...
Пьяный Медведев (фото и видео)
Корректная работа паролей NOD32
События в Урумчи, Китай (36 фото)
Лучшие музыкальные сайты Рунета
Дресс-код от Газпрома (17 страниц прилож...
Обнаженная Катя Гусева в майском номере ...
Очень красивые виды природы со всего мир...
Гермиона топлесс (фото)
Фантастические картины Mahir Ates (24 фо...
Топ-100 главных книг в мире по версии Ne...
Отличные фотографии дня ВДВ в 2008 и 200...
Проиграла пари - раздевайся (7 фото ню)
Вырезаем снежинки из бумаги (инструкция)
Эрнестина Шепард, 75-летний тренер по фи...
Подарок папе своими руками (фото)
13 самых страшных компьютерных игр
Классное платье от Джоди Марш (9 фото)
Сиськи Милы Йовович (12 фото)
Супергибкость. Резиновые женщины (53 фот...

Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]