Ak si plánujete nainštalovať redakčný systém WordPress, odporúčame, aby ste si ho nainštalovali rovno na HTTPS adrese. Z tohto dôvodu si prečítajte najprv tento návod, konkrétne sekciu Nastavenie HTTPS adresy. Po inštalácii si ušetríte starosti s presmerovaním na zabezpečenú URL.
Ak však už máte WordPress nainštalovaný a chceli by ste ho prevádzkovať na zabezpečenej (HTTPS) adrese, tak odporúčame postupovať podľa návodu Zapnutie presmerovania webovej stránky z adresy HTTP na HTTPS.
Ak z nejakého dôvodu nechcete presmerovanie aktivovať týmto spôsobom, ale chcete si webovú stránku presmerovať manuálne pomocou súboru .htaccess, pokračujte v čítaní tohto návodu.
Nastavenie WordPress z HTTP na HTTPS
Ak si chcete WordPress presmerovať na HTTPS manuálne, najprv si vygenerujte bezpečnostný certifikát, napr. Let's Encrypt pre doménu resp. subdoménu, na ktorej máte WordPress nainštalovaný.
Keď certifikát bude aktívny (Let's Encrypt je aktívny zvyčajne do 5 minút) otestujte si funkčnosť navštívením vašej stránky na adrese HTTPS. Ak sa stránka bude zobrazovať správne, prihláste sa do administrácie WordPress a vo všeobecných nastaveniach si zmeňte adresy (URL) na HTTPS. Podľa uváženia si môžete do oboch adries zadať aj www, ak chcete mať WordPress na adrese s www, ale všeobecne odporúčame používať verziu bez www. Ak máte WordPress nainštalovaný na subdoméne, www v adrese neodporúčame používať vôbec.
Presmerovanie na HTTPS pomocou súboru .htaccess
Po nastavení adresy v administrácii WordPress prihláste sa na server a v zložke, kde máte Wordpress nainštalovaný, by sa mal nachádzať súbor .htaccess. Stiahnite si ho do počítača, otvorte pre úpravu (buď klasický Poznámkový blok vo Windows (Notepad) alebo skôr odporúčame Notepad++, ktorý je vhodný na takéto úpravy) a najskôr uvidíte takýto text:
# BEGIN WordPress # Inštrukcie (riadky) medzi “BEGIN WordPress” a “END WordPress” sú # dynamicky generované a mali by byť upravené iba pomocou filtrov WordPress. # Akékoľvek zmeny inštrukcií medzi týmito značkami budú prepísané. <IfModule mod_rewrite.c> RewriteEngine On RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress
Dole medzi </IfModule> a # END WordPress vložte nižšie uvedený kód. Kód zabezpečí to, že ak si otvoríte svoju webovú stránku vo Wordpress na adrese HTTP s www alebo bez www, tak stránka sa presmeruje vždy na tú HTTPS adresu, ktorú máte zadanú v nastaveniach WordPress (takže bez ohľadu na to, či máte adresu zadanú s www alebo bez www).
RewriteEngine On RewriteCond %{HTTP:X-Forwarded-Proto} !https RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
Ak chcete mať WordPress na www adrese medzi </IfModule> a # END WordPress môžete vložiť aj tento alternatívny kód uvedený nižšie. Používajte len v prípade, ak by kód uvedený vyššie nepracoval správne (nemalo by sa tak stať) a v nastaveniach stránky máte zadanú www verziu. Ak máte v nastaveniach URL bez www, nižšie uvedený kód nepoužívajte (spôsobí zacyklenie presmerovania).
RewriteEngine On RewriteCond %{HTTP_HOST} !^www\. RewriteRule ^(.*)$ https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301] RewriteCond %{HTTP:X-Forwarded-Proto} !https RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Kódy uvedené vyššie môžu ovplyvniť nastavenie .htaccess súborov subdomén (ak máte WordPress nainštalovaný na hlavnej stránke). Ak nechcete, aby hlavný .htaccess ovplyvňoval správanie sa webových stránok na subdoménach, priamo do zložky _sub vložte súbor .htaccess s týmto obsahom:
RewriteEngine On
Testovania správnosti presmerovania odporúčame prevádzkovať v inkognito režime prehliadača alebo si po každej zmene v .htaccess súbore reštartujte prehliadač, aby ste sa vyhli problémom s nacachovaným obsahom stránok.
See also this article
See also this article