Перенаправление URL http - это операция автоматического изменения URL с одного URL на другой.
Перенаправление страницы URL-адреса - это операция автоматического изменения URL-адреса с одного URL-адреса на другой URL-адрес.
Это перенаправление осуществляется по следующим причинам:
Пользователь может перейти к старому URL-адресу по старым внешним ссылкам или закладкам.
веб-мастером сайта, добавляющим скрипт.
Перенаправление на стороне сервера выполняется на сервере путем настройки программного обеспечения сервера Apache / IIS или с помощью сценария PHP / ASP / ASP.NET.
Это предпочтительный способ перенаправления URL-адресов, поскольку вы можете вернуть код состояния HTTP 301 Moved Permanently.
Поисковые системы используют статус 301 для переноса рейтинга страницы со старого URL на новый.
Перенаправление на стороне клиента выполняется в веб-браузере пользователя с помощью метатега обновления HTML или кода Javascript.
Перенаправление клиента менее предпочтительно, так как оно не возвращает код состояния HTTP 301.
Доменное имя |
Хостинг- сервер |
Размещение кода перенаправления |
---|---|---|
не изменилось | не изменилось | старая страница на том же сервере |
не изменилось | изменено | старая страница на новом сервере |
изменено | не изменилось | старая страница на том же сервере |
изменено | изменено | старая страница на старом сервере |
* Только с перенаправлением .htaccess : добавьте код перенаправления в файл httpd.conf или в файл .htaccess .
Код состояния | Кодовое название статуса | Описание |
---|---|---|
200 | ОК | успешный HTTP-запрос |
300 | Множество вариантов | |
301 | переехал навсегда | постоянное перенаправление URL |
302 | Найденный | временное перенаправление URL |
303 | См. Другое | |
304 | Не изменено | |
305 | Используй прокси | |
307 | Временное перенаправление | |
404 | не обнаружена | URL не найден |
Код состояния HTTP 301 перемещен навсегда означает постоянное перенаправление URL.
Редирект 301 является предпочтительным способом перенаправления URL-адресов, поскольку он информирует поисковые системы о том, что URL-адрес был перемещен навсегда, и поисковые системы должны помещать новую страницу URL-адреса в результаты поиска вместо старой страницы URL-адреса и передавать новую страницу URL-адреса, рейтинг страницы старого URL-адреса.
Редирект 301 может выполняться между доменами или в одном домене.
Google рекомендует использовать 301 редирект.
Сценарий перенаправления | Сторона перенаправления | Тип файла старой страницы | URL перенаправления или домен | Старый тип URL-сервера | 301 редирект поддержка |
---|---|---|---|---|---|
PHP | На стороне сервера | .php | URL | Apache / Linux | да |
ASP | На стороне сервера | .asp | URL | IIS / Windows | да |
ASP.NET | На стороне сервера | .aspx | URL | IIS / Windows | да |
.htaccess | На стороне сервера | все | URL / домен | Apache / Linux | да |
IIS | На стороне сервера | все | URL / домен | IIS / Windows | да |
HTML-тег канонической ссылки | Сторона клиента | .html | URL | все | нет |
Обновление метаданных HTML | Сторона клиента | .html | URL | все | нет |
HTML-фрейм | Сторона клиента | .html | URL | все | нет |
Javascript | Сторона клиента | .html | URL | все | нет |
jQuery | Сторона клиента | .html | URL | все | нет |
сценарий перенаправления - язык сценариев, который используется для перенаправления.
сторона перенаправления - где происходит перенаправление - на стороне сервера или на стороне клиента .
Тип файла старой страницы - тип старой URL-страницы, которая может содержать скриптовый язык кода перенаправления.
URL-адрес перенаправления или домен - поддерживает перенаправление URL-адресов отдельной веб-страницы или перенаправление домена всего веб-сайта.
типичный старый тип URL-сервера - типичное программное обеспечение и операционная система сервера.
Поддержка перенаправления 301 - указывает, может ли быть возвращен постоянный ответ статуса перенаправления 301.
Замените код old-page.php кодом перенаправления на new-page.php.
old_page.php:
<?php
// PHP permanent URL redirection
header("Location: http://www.mydomain.com/new-page.php", true,
301);
exit();
?/
Старая страница должна иметь расширение .php.
Новая страница может быть с любым расширением.
См .: Перенаправление PHP
Файл .htaccess - это локальный файл конфигурации сервера Apache.
Если у вас есть разрешение на изменение файла httpd.conf , лучше добавить директиву Redirect в httpd.conf вместо файла .htaccess .
Постоянное перенаправление с old-page.html на new-page.html .
.htaccess:
Redirect 301 /old-page.html http://www.mydomain.com/new-page.html
Постоянное перенаправление со всех страниц домена на newdomain.com .
Файл .htaccess должен находиться в корневом каталоге старого веб-сайта.
.htaccess:
Redirect 301 / http://www.newdomain.com/
См .: Перенаправление .htaccess
old-page.asp:
<%@ Language="VBScript" %/
<%
' ASP permanent URL redirection
Response.Status="301 Moved Permanently"
Response.AddHeader "Location", "http://www.mydomain.com/new-page.html"
Response.End
%/
old-page.aspx:
<script language="C#" runat="server"/
// ASP.net permanent URL redirection
private void Page_Load(object sender, EventArgs e)
{
Response.Status = "301 Moved Permanently";
Response.AddHeader("Location","http://www.mydomain.com/new-page.html");
Response.End();
}
</script/
Перенаправление тега мета-обновления HTML не возвращает код статуса постоянного перенаправления 301, но рассматривается Google как перенаправление 301.
Замените старую страницу кодом перенаправления на URL-адрес страницы, на которую вы хотите выполнить перенаправление.
old-page.html:
<!-- HTML meta refresh URL redirection --/
<html/
<head/
<meta http-equiv="refresh"
content="0; url=http://www.mydomain.com/new-page.html"/
</head/
<body>
<p>The page has moved to:
<a href="http://www.mydomain.com/new-page.html">this
page</a></p>
</body>
</html>
Смотрите: перенаправление HTML
Перенаправление Javascript не возвращает код статуса постоянного перенаправления 301.
Замените старую страницу кодом перенаправления на URL-адрес страницы, на которую вы хотите выполнить перенаправление.
old-page.html:
<html>
<body>
<script type="text/javascript">
// Javascript URL redirection
window.location.replace("http://www.mydomain.com/new-page.html");
</script>
</body>
</html>
См .: Перенаправление Javascript
Перенаправление jQuery на самом деле является еще одним типом перенаправления Javascript.
Перенаправление jQuery не возвращает код статуса постоянного перенаправления 301.
Замените старую страницу кодом перенаправления на URL-адрес страницы, на которую вы хотите выполнить перенаправление.
old-page.html:
<!DOCTYPE html>
<html>
<body>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script type="text/javascript">
//
jQuery URL redirection
$(document).ready( function() {
url = "http://www.mydomain.com/new-page.html";
$( location ).attr("href",
url);
});
</script>
</body>
</html>
Смотрите: перенаправление jQuery
Каноническая ссылка не выполняет перенаправление на предпочтительный URL-адрес, но может быть альтернативой перенаправлению URL-адресов для веб-сайтов, большая часть трафика которых поступает из поисковых систем.
Тег канонической ссылки HTML можно использовать, когда есть несколько страниц с похожим содержанием, и вы хотите сообщить поисковым системам, какую страницу вы предпочитаете использовать в результатах поиска.
Канонический тег ссылки может ссылаться на тот же домен, а также на междоменный.
Добавьте тег канонической ссылки на старую страницу, чтобы создать ссылку на новую страницу.
Добавьте тег канонической ссылки на страницы, которые вы предпочитаете, чтобы трафик поисковых систем не ссылался на предпочитаемую страницу.
Тег канонической ссылки нужно добавить в раздел <head>.
old-page.html:
<link rel="canonical" href="http://www.mydomain.com/new-page.html">
См .: Каноническая URL-ссылка
При перенаправлении фрейма файл new-page.html просматривается фреймом html.
Это не настоящее перенаправление URL.
Перенаправление фреймов не подходит для поисковых систем и не рекомендуется.
old-page.html:
<!-- HTML frame redirection -->
<html>
<head>
<title>Title of new page</title>
</head>
<frameset cols="100%">
<frame src="http://www.mydomain.com/new-page.html">
<noframes>
<a href="http://www.mydomain.com/new-page.html">Link
to new page</a>
</noframes>
</frameset>
</html>
301 Генератор перенаправления ►