Community
1 19836
HostiServer
2025-08-21 14:12:00

Jak nakonfigurovat 301 Redirect z HTTP na HTTPS v Apache a Nginx?

Průvodce 301 přesměrováním 2025

Aktualizovaný obsah, původně publikovaný v červnu 2018

Máte web na starém HTTP s varováním „Není bezpečné“ od prohlížečů? Nebo vás Google a Seznam neposouvají výš? 301 přesměrování na HTTPS je jako ukázat všem návštěvníkům cestu k hlavní bráně – bezpečné, výhodné pro SEO a nezbytné. Tento návod vás provede nastavením na Apache nebo Nginx a nabídne tipy, jak se vyhnout nástrahám. Aktualizováno pro rok 2025 podle nejnovějších standardů.

Proč je 301 přesměrování klíčové?

Představte si, že váš web běží na různých adresách: http://priklad.cz, https://priklad.cz nebo http://www.priklad.cz. Google to může považovat za tři samostatné weby, co rozsekává váš SEO potenciál. 301 přesměrování všechny – návštěvníky i vyhledávače – nasměruje na jednu adresu, čímž zachová provoz i pozice.

HTTPS je dnes základ. Šifruje data uživatelů, chrání před varováními prohlížečů, jako je „Není bezpečné“ v Chromu, a přináší malý bonus v Google žebříčcích. Bez přesměrování může HTTP verze odhánět lidi. 301 přesměrování je taky skvělé při rebrandingu, sloučení webů nebo přechodu na HTTPS.

Kdy použít 301 přesměrování?

  • Když je web dostupný na více adresách (s www nebo bez, HTTP nebo HTTPS).
  • Při změně domény po rebrandingu (např. z staryweb.cz na novyweb.cz).
  • Při sloučení dvou webů, kde staré odkazy mají vést na nové stránky.
  • Při přechodu na HTTPS pro zabezpečení všech stránek.

Zajímavost: Chrome v roce 2018 nastavil nové pravidla a udělal z HTTPS téměř povinnost. Chcete vědět víc? Přečtěte si náš článek Jak ovlivní vaše stránky červencová (2018) verze Chrome 68?.

Jak nastavit 301 přesměrování krok za krokem

1. Ověřte připravenost HTTPS Než začnete s přesměrováním, ujistěte se, že HTTPS funguje. Získejte SSL certifikát – zdarma od Let’s Encrypt je skvělá volba. Hostingové panely jako cPanel nebo Plesk to zjednodušují, nebo můžete použít CDN, například od Cloudflare. Po nastavení otestujte certifikát na SSL Labs a cílte na hodnocení A nebo A+.

2. Nastavení přesměrování na Apache přes .htaccess Na Apache serveru se přesměrování řeší v souboru .htaccess. Zkontrolujte, zda je modul mod_rewrite zapnutý. Pokud ne, přidejte do konfigurace serveru:

LoadModule rewrite_module /usr/lib/apache2/modules/mod_rewrite.so

Restartujte Apache příkazem:

sudo apache2ctl restart

Otevřete .htaccess v kořenové složce webu. Pro základní přesměrování z HTTP na HTTPS použijte:

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Chcete odstranit www (nebo ho ponechat)? Příklad pro https://priklad.cz bez www:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.priklad\.cz$ [NC]
RewriteRule ^(.*)$ https://priklad.cz/$1 [R=301,L]

Chyby v .htaccess mohou zkazit vše, takže kód důkladně zkontrolujte.

3. Nastavení přesměrování na Nginx Na Nginx se přesměrování nastavuje v konfiguraci virtuálního hostitele, například v nginx.conf nebo sites-enabled/priklad.conf. Pro základní přesměrování z HTTP na HTTPS:

server {
    listen 80;
    server_name priklad.cz www.priklad.cz;
    return 301 https://$server_name$request_uri;
}

Pro HTTPS s www:

server {
    listen 80;
    server_name priklad.cz www.priklad.cz;
    return 301 https://www.priklad.cz$request_uri;
}

Pro HTTPS bez www:

server {
    listen 80;
    server_name priklad.cz www.priklad.cz;
    return 301 https://priklad.cz$request_uri;
}

Pro přesměrování HTTPS bez www na HTTPS s www:

server {
    listen 443 ssl http2;
    server_name priklad.cz;
    ssl_certificate /path/to/cert.pem;
    ssl_certificate_key /path/to/key.pem;
    return 301 https://www.priklad.cz$request_uri;
}
server {
    listen 443 ssl http2;
    server_name www.priklad.cz;
    ssl_certificate /path/to/cert.pem;
    ssl_certificate_key /path/to/key.pem;
    root /var/www/priklad;
    # Další nastavení...
}

Pokud hostingový panel omezuje samostatné vhosty, přidejte přesměrování do hlavního bloku:

server {
    listen 80;
    listen 443 ssl http2;
    server_name www.priklad.cz priklad.cz;
    ssl_certificate /path/to/cert.pem;
    ssl_certificate_key /path/to/key.pem;
    root /var/www/priklad;
    if ($scheme = http) {
        return 301 https://$server_name$request_uri;
    }
    # Další nastavení...
}

4. Otestujte přesměrování Po nastavení ověřte funkčnost pomocí Redirect Checker. Načtěte web přes HTTP – přesměruje na HTTPS? V Chrome nebo Firefoxu hledejte chyby „smíšeného obsahu“ (když se na HTTPS stránce načítá HTTP obsah). Ty je třeba opravit.

Tip: Smíšený obsah může být problém. Podívejte se na průvodce ochranou před proxy zrcadly pro další bezpečnostní tipy.

5. Aktualizujte Google Search Console Aby Google věděl o přechodu na HTTPS:

Přidejte https://priklad.cz jako novou vlastnost v Google Search Console.

Nahrajte aktualizovanou sitemap.xml.

Zkontrolujte „Chyby procházení“ a vyřešte problémy.

Použijte nástroj „Kontrola URL“ pro požadavek na přeindexování.

Přeskočení tohoto kroku může oddálit obnovu pozic.

6. Přidejte HSTS pro vyšší bezpečnost HTTP Strict Transport Security (HSTS) vynutí použití HTTPS. Přidejte:

Pro Apache:

Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains"

Pro Nginx:

add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;

Pro maximální ochranu zvažte přidání webu na HSTS Preload List.

7. Zjednodušte si to s CMS Používáte WordPress, Joomla nebo PrestaShop? Žádný kód nepotřebujete. Na WordPressu plugin Really Simple SSL přesměruje HTTP na HTTPS za vás. V cPanelu nebo Plesku zapněte „Vynutit HTTPS“ v nastavení domény. Rychlé a jednoduché.

Příklad z praxe

Nedávno jsme pomohli pražskému e-shopu s kávou přejít na HTTPS. Starý HTTP web klesal v Google žebříčcích a varování prohlížečů odháněla zákazníky. 301 přesměrování přes Nginx a vyčištění smíšeného obsahu to zachránilo. Po testování v testovacím prostředí se za dva měsíce návštěvnost zvýšila o 15 % a odliv klesl z 48 % na 39 %. CDN od Hostiserver přidalo rychlost. Důkladné testování bylo klíčem.

Pozor! Pokud nemáte základní dovednosti správy serverů, Hostiserver nedoporučuje měnit nastavení na produkčním prostředí. Lepší je oslovit profesionály, aby se vyhnuli rizikům (např. web, co po úpravách nepůjde). Pokud se rozhodnete jít sami, testujte na zkušebním prostředí.

FAQ

Ztratím při 301 přesměrování návštěvnost?
Ne, pokud je vše správně nastavené. 301 přenáší asi 95 % SEO hodnoty na novou adresu.
Jaký je rozdíl mezi 301 a 302 přesměrováním?
301 je trvalé a ideální pro SEO. 302 je dočasné a může vyhledávače zmást.
Přesměrování nefunguje. Co dělat?
Zkontrolujte chyby v .htaccess nebo Nginx konfiguraci. Pomohou nástroje jako Redirect Checker nebo Screaming Frog.
Mohu nastavit přesměrování bez přístupu k serveru?
Ano, na WordPressu stačí plugin jako Really Simple SSL, nebo v cPanelu zapněte „Vynutit HTTPS“.

Contents

MANAGED VPS STARTING AT

$19 95 / mo

NEW INTEL XEON BASED SERVERS

$80 / mo

CDN STARTING AT

$0 / mo

 

Tento web používá cookies. Používáním tohoto webu souhlasíte s politikou ochrany osobních údajů.