Odpověď serveru 301 Moved Permanently
HTTP Status Code 301 (Moved Permanently)
HTTP status code 301 (Moved Permanently) je klíčový kód, který se používá pro řízení přesměrování URL na webových stránkách. Tento kód označuje, že požadovaný zdroj byl trvale přesunut na novou adresu. Je důležité pochopit, jak správně implementovat tento status a jaké má důsledky pro SEO a uživatelskou zkušenost.
Definice a účel kódu 301
Kód 301 označuje, že stránka byla trvale přesunuta na jinou URL. V praxi to znamená, že vyhledávače a prohlížeče by měly automaticky přesměrovat uživatele na novou adresu. Použití kódu 301 je zásadní pro:
- SEO optimalizaci: Pomáhá udržet hodnocení a autoritu starého URL na novém URL.
- Uživatelskou zkušenost: Uživatelé budou přesměrováni na aktuální a relevantní obsah bez zbytečného hledání.
Praktické příklady použití
- Přesměrování starého webu na nový: Pokud se rozhodnete změnit doménu, můžete použít kód 301 k přesměrování veškerého provozu na novou adresu.
- Úprava struktury URL pro zlepšení čitelnosti: Například změna URL z
example.com/page1
naexample.com/novy-nazev
. - Použití 301 pro sloučení více stránek do jedné: Pokud se rozhodnete sloučit obsah z několika stránek na jednu, můžete použít kód 301 pro přesměrování starých URL na novou stránku.
Chyby spojené s kódem 301
Chyby při implementaci přesměrování mohou vést k problémům s přístupností a SEO. Mezi běžné důvody, proč může dojít k chybě přesměrování, patří:
- Nesprávná konfigurace serveru.
- Přesměrování na neexistující URL.
- Cyklické přesměrování.
Pro ověření správnosti přesměrování můžete použít nástroje jako je curl nebo online služby pro kontrolu HTTP statusů.
Oprava chyb 301 v různých programovacích jazycích
PHP
V PHP můžete nastavit přesměrování pomocí funkce header()
. Následující příklad ukazuje, jak to provést:
<?php
header("Location: https://example.com/novy-nazev", true, 301);
exit();
?>
Při přesměrování je důležité správně zpracovat případné chyby, například zajistit, aby nebylo odesláno žádné další výstupní data před voláním header()
.
Python
V Pythonu můžete použít frameworky jako Flask nebo Django pro nastavení přesměrování. Například v Flasku můžete použít:
from flask import Flask, redirect
app = Flask(__name__)
@app.route('/stara-stranka')
def stara_stranka():
return redirect("https://example.com/novy-nazev", code=301)
Ujistěte se, že správně zpracováváte výjimky a chyby během přesměrování.
JavaScript
Pokud používáte Node.js a Express, můžete nastavit přesměrování následujícím způsobem:
const express = require('express');
const app = express();
app.get('/stara-stranka', (req, res) => {
res.redirect(301, 'https://example.com/novy-nazev');
});
Při implementaci přesměrování v JavaScriptu je důležité zkontrolovat, zda jsou všechny cesty správné a že se správně zpracovávají chyby.
Doporučení pro použití kódu 301
Kód 301 by měl být používán v následujících situacích:
- Při trvalém přesunu obsahu na novou URL.
- Pokud chcete sloučit obsah z více stránek do jedné.
Je důležité mít na paměti, že použití jiných statusů (např. 302 pro dočasné přesměrování) může být občas vhodné, ale 301 je preferován pro trvalá řešení. Ověřte si, že vyhledávače správně indexují nové URL pomocí nástrojů pro webmastery.
Další tipy pro testování přesměrování
Pro ověření stavu 301 můžete použít následující nástroje a metody:
- Online HTTP status checker.
- Prohlížečové rozšíření pro sledování přesměrování.
- Příkazový řádek s
curl
.
Je rovněž důležité zkontrolovat, zda jsou nové URL správně indexovány vyhledávači a zda se uživatelé dostanou na relevantní obsah bez problémů.