URL http redirection je automatická operace změny URL z jedné URL na jinou URL.
Přesměrování stránky URL je operace automatické změny adresy URL z jedné adresy URL na jinou adresu URL.
Toto přesměrování se provádí z následujících důvodů:
Uživatel se může na starou adresu URL dostat ze starých externích odkazů nebo záložky.
webmasterem webu, který přidá skript.
Přesměrování na straně serveru se provádí na serveru konfigurací serverového softwaru Apache / IIS nebo pomocí skriptu PHP / ASP / ASP.NET.
Toto je upřednostňovaný způsob přesměrování adres URL, protože můžete vrátit stavový kód HTTP 301 Moved Permanently.
Vyhledávače používají stav 301 k přenosu hodnocení stránky ze staré adresy URL na novou adresu URL.
Přesměrování na straně klienta se provádí ve webovém prohlížeči uživatele pomocí značky HTML meta refresh nebo kódu Javascript.
Přesměrování klienta je méně výhodné, protože nevrací stavový kód HTTP 301.
Název domény |
Hostující server |
Umístění kódu přesměrování |
---|---|---|
Nezměněn | Nezměněn | stará stránka na stejném serveru |
Nezměněn | změněno | stará stránka na novém serveru |
změněno | Nezměněn | stará stránka na stejném serveru |
změněno | změněno | stará stránka na starém serveru |
* Pouze s přesměrováním .htaccess : přidejte kód přesměrování do souboru httpd.conf nebo do souboru .htaccess .
Stavový kód | Název stavového kódu | Popis |
---|---|---|
200 | OK | úspěšný požadavek HTTP |
300 | Několik možností | |
301 | Přesunuto trvale | trvalé přesměrování URL |
302 | Nalezeno | dočasné přesměrování URL |
303 | Viz další | |
304 | Nezměněno | |
305 | Použij proxy | |
307 | Dočasné přesměrování | |
404 | Nenalezeno | URL nenalezeno |
Stavový kód HTTP 301 Moved Permanently znamená trvalé přesměrování URL.
Přesměrování 301 je upřednostňovaný způsob přesměrování adres URL, protože informuje vyhledávače o tom, že se adresa URL přesunula navždy, a vyhledávače by měly do výsledků vyhledávání umístit novou stránku URL namísto staré stránky URL a přenést novou stránku URL, hodnocení stránky staré stránky URL.
Přesměrování 301 lze provést napříč doménami nebo na stejné doméně.
Google doporučuje použít přesměrování 301.
Přesměrování skriptu | Přesměrovaná strana | Starý typ souboru stránky | URL nebo doména přesměrování | Starý typ serveru URL | Podpora přesměrování 301 |
---|---|---|---|---|---|
PHP | Na straně serveru | .php | URL | Apache / Linux | ano |
ASP | Na straně serveru | .asp | URL | IIS / Windows | ano |
ASP.NET | Na straně serveru | .aspx | URL | IIS / Windows | ano |
.htaccess | Na straně serveru | vše | URL / doména | Apache / Linux | ano |
IIS | Na straně serveru | vše | URL / doména | IIS / Windows | ano |
Značka kanonického odkazu HTML | Na straně klienta | .html | URL | vše | ne |
HTML meta refresh | Na straně klienta | .html | URL | vše | ne |
Rám HTML | Na straně klienta | .html | URL | vše | ne |
Javascript | Na straně klienta | .html | URL | vše | ne |
jQuery | Na straně klienta | .html | URL | vše | ne |
redirect script - skriptovací jazyk, který se používá pro přesměrování.
strana přesměrování - tam, kde dochází k přesměrování - na straně serveru nebo na straně klienta .
starý typ souboru stránky - typ staré stránky URL, která může obsahovat skriptovací jazyk kódu přesměrování.
přesměrování URL nebo domény - podporuje přesměrování URL jedné webové stránky nebo přesměrování domény celého webu.
typický starý typ serveru URL - typický software a operační systém serveru.
Podpora přesměrování 301 - označuje, zda lze vrátit trvalou odpověď na stav přesměrování 301.
Nahraďte kód old-page.php kódem přesměrování na new-page.php.
old_page.php:
<?php
// PHP permanent URL redirection
header("Location: http://www.mydomain.com/new-page.php", true,
301);
exit();
?/
Stará stránka musí mít příponu souboru .php.
Nová stránka může být s jakýmkoli rozšířením.
Viz: Přesměrování PHP
Soubor .htaccess je místní konfigurační soubor serveru Apache.
Pokud máte oprávnění ke změně souboru httpd.conf , je lepší přidat direktivu Redirect do souboru httpd.conf namísto souboru .htaccess .
Trvalé přesměrování ze staré stránky.html na novou stránku.html .
.htaccess:
Redirect 301 /old-page.html http://www.mydomain.com/new-page.html
Trvalé přesměrování ze všech doménových stránek na newdomain.com .
Soubor .htaccess by měl být v kořenovém adresáři starého webu.
.htaccess:
Redirect 301 / http://www.newdomain.com/
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/
Přesměrování značky meta refresh HTML nevrací stavový kód trvalého přesměrování 301, ale Google jej považuje za přesměrování 301.
Nahraďte starou stránku kódem pro přesměrování adresou URL stránky, na kterou chcete přesměrovat.
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>
Viz: Přesměrování HTML
Přesměrování Javascript nevrací 301 stavový kód trvalého přesměrování.
Nahraďte starou stránku kódem pro přesměrování adresou URL stránky, na kterou chcete přesměrovat.
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>
Přesměrování jQuery je ve skutečnosti jiný typ přesměrování Javascript.
Přesměrování jQuery nevrací 301 stavový kód trvalého přesměrování.
Nahraďte starou stránku kódem pro přesměrování adresou URL stránky, na kterou chcete přesměrovat.
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>
Viz: přesměrování jQuery
Kanonický odkaz nepřesměrovává na preferovanou adresu URL, ale může to být alternativa k přesměrování adresy URL pro weby, které většinu provozu přicházejí z vyhledávačů.
Značku kanonického odkazu HTML lze použít, pokud existuje několik stránek s podobným obsahem a chcete vyhledávačům sdělit, kterou stránku preferujete použít ve výsledcích vyhledávání.
Kanonická značka odkazu může odkazovat na stejnou doménu i mezi doménami.
Přidejte značku kanonického odkazu na starou stránku a připojte se k nové stránce.
Přidejte značku kanonického odkazu na stránky, kterým dáváte přednost, aby se provoz vyhledávačů neodkazoval na odkaz na preferovanou stránku.
Značka kanonického odkazu by měla být přidána v sekci <head>.
old-page.html:
<link rel="canonical" href="http://www.mydomain.com/new-page.html">
Při přesměrování rámců je soubor new-page.html zobrazen pomocí html rámce.
Toto není skutečné přesměrování URL.
Přesměrování rámce není vhodné pro vyhledávače a nedoporučuje se.
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>