Přesměrování na HTTPS

Vyřešeno1.60K zhlédnutíDomény
0

Dobrý den,

chtěl se zeptat, jak vyřešit problém s přesměrováním na HTTPS. Mám naprosto stejný problém jako je popsán zde: https://help.wedos.cz/otazka/presmerovani-na-https/13179/

Bohužel zde není napsáno řešení problému. Vyzkoušel jsem udělat stejné možnosti jako byly popsány níže, ale vždy se stejným výsledkem.

Jedná se o doménu duo-kontrast.cz.

Děkuji za pomoc a přeji hezký den.
S pozdravem,
Radek Gomola

Dobrý den.

Používám Váš hosting s administračním systémem WordPress.

Mám aktivovanou příplatkovou službu \”podpora HTTPS na doméně (SNI), podle toho návodu jsem nastavil doménu woodpecker-woodcrafts.com pro Let´s Encrypt certifikát. Následně jsem podle tohoto návodu upravil v administraci WordPress základní nastavení u instalace WordPressu na https://woodpecker-woodcrafts.com a úvodní stránku také na https://woodpecker-woodcrafts.com. Dosud vše fungovalo, stránky se zobrazovaly jako zabezpečené s https protokolem, přihlášení do administrace WordPress proběhlo bez problémů. Problém nastal v dalším kroku při úpravě souboru .htaccess.

Můj původní soubor .htaccess ve složce www/, který jsem upravoval, vypadal takto:

# htaccess rules for subdomains and aliases
# to create new subdomain, create a folder www/subdom/(subdomain name)
# to create web for alias, create a folder www/domains/(whole domain name)
 # htaccess pravidla pro subdomeny a samostatne weby aliasu
# pro vytvoreni subdomeny vytvorte adresar www/subdom/(nazev subdomeny)
# pro vytvoreni webu pro alias vytvorte adresar www/domains/(cely domenovy nazev)
# dalsi info a priklady: http://kb.wedos.com/r/32/webhosting-htaccess.html
 RewriteEngine On
 # cele domeny (aliasy)
RewriteCond %{REQUEST_URI} !^domains/
RewriteCond %{REQUEST_URI} !^/domains/
RewriteCond %{HTTP_HOST} ^(www\\.)?(.*)$
RewriteCond %{DOCUMENT_ROOT}/domains/%2 -d
RewriteRule (.*) domains/%2/$1 [DPI]
 # subdomeny (s nebo bez www na zacatku)
RewriteCond %{REQUEST_URI} !^subdom/
RewriteCond %{REQUEST_URI} !^/subdom/
RewriteCond %{HTTP_HOST} ^(www\\.)?(.*)\\.([^\\.]*)\\.([^\\.]*)$
RewriteCond %{DOCUMENT_ROOT}/subdom/%2 -d
RewriteRule (.*) subdom/%2/$1 [DPI]
 # aliasy - spravne presmerovani pri chybejicim /
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^domains/[^/]+/(.+[^/])$ /$1/ [R]
 # subdomeny - spravne presmerovani pri chybejicim /
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^subdom/[^/]+/(.+[^/])$ /$1/ [R]

Po provedených změnách dle návodu vypadal takto:

# htaccess rules for subdomains and aliases
# to create new subdomain, create a folder www/subdom/(subdomain name)
# to create web for alias, create a folder www/domains/(whole domain name)
 # htaccess pravidla pro subdomeny a samostatne weby aliasu
# pro vytvoreni subdomeny vytvorte adresar www/subdom/(nazev subdomeny)
# pro vytvoreni webu pro alias vytvorte adresar www/domains/(cely domenovy nazev)
# dalsi info a priklady: http://kb.wedos.com/r/32/webhosting-htaccess.html
 RewriteEngine On
 # presmerovani HTTPS
RewriteCond %{HTTP_HOST} ^woodpecker-woodcrafts\\.com [NC]
RewriteRule (.*) https://www.woodpecker-woodcrafts.com/$1 [R=301,QSA,L]
 RewriteCond %{HTTPS} off
RewriteRule (.*) https://www.woodpecker-woodcrafts.com/$1 [R=301,L]
 # cele domeny (aliasy)
RewriteCond %{REQUEST_URI} !^domains/
RewriteCond %{REQUEST_URI} !^/domains/
RewriteCond %{HTTP_HOST} ^(www\\.)?(.*)$
RewriteCond %{DOCUMENT_ROOT}/domains/%2 -d
RewriteRule (.*) domains/%2/$1 [DPI]
 # subdomeny (s nebo bez www na zacatku)
RewriteCond %{REQUEST_URI} !^subdom/
RewriteCond %{REQUEST_URI} !^/subdom/
RewriteCond %{HTTP_HOST} ^(www\\.)?(.*)\\.([^\\.]*)\\.([^\\.]*)$
RewriteCond %{DOCUMENT_ROOT}/subdom/%2 -d
RewriteRule (.*) subdom/%2/$1 [DPI]
 # aliasy - spravne presmerovani pri chybejicim /
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^domains/[^/]+/(.+[^/])$ /$1/ [R]
 # subdomeny - spravne presmerovani pri chybejicim /
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^subdom/[^/]+/(.+[^/])$ /$1/ [R]

Po modifikaci souboru se nedokážu přihlásit do administrace wordpress, po zadání přihlašovacích újadů jsem přesměrován na stejnou stránku přihlášení. Vymazání veškerých cookies situaci nemění. Při zadání adresy webu se zobrazí chyba: smyčka při přesměrování. Zkusil jsem upravit .htaccess soubor přesně podle návodu výše. Výsledek vypadal takto:

# BEGIN WordPress
RewriteEngine On
 RewriteCond %{HTTP_HOST} ^woodpecker-woodcrafts\\.com [NC]
RewriteRule (.*) https://www.woodpecker-woodcrafts.com/$1 [R=301,QSA,L]
 RewriteCond %{HTTPS} off
RewriteRule (.*) https://www.woodpecker-woodcrafts.com/$1 [R=301,L]
 RewriteBase /
RewriteRule ^index\\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress

Po této změně se při pokusu načtení stránky přihlášení do administrace wordpress zobrazí chyba 404 /index.php nenalezen na tomto serveru. Při zadání url stránky se zobrazí uvítací obrazovka Wedos – webhosting je aktivní. Po smazání souboru index.html ze složky www/ se situace nemění.

Poradíte mi, prosím, jak vyřešit tento problém? Děkuji

Role: Zákazník
Otázka je uzamčena pro nové odpovědi.
JŠ255861 Vybral nejlepší odpověď 19. 2. 2020
0

Edit: vyřešil jsem použitím jiných pravidel z internetu:

# all redirection HTTP -> HTTPS
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

# redirection no www -> https://www.
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [R=301,L]

# redirection www. -> https://
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ https://%1/$1 [R=301,L]

Role: Zákazník
JŠ255861 Vybral nejlepší odpověď 19. 2. 2020
Prohlížíte 1 ze 1 odpovědí, klikněte zde pro zobrazení všech odpovědí.