| Autor | Zpráva | ||
|---|---|---|---|
| StepanMatl Profil |
Zdravím, zjistil jsem, že když zadám URL složky bez koncového lomítka:
https://www.web.cz/slozka dojde nejdřív k přechodu na: http://www.web.cz/slozka/ a až poté na: https://www.web.cz/slozka/ Jak se prosím zbavit toho zbytečného přesměrování na HTTP verzi? Děkuji. |
||
| anonym_ Profil * |
#2 · Zasláno: 20. 11. 2020, 01:09:23
StepanMatl:
Chybu ve tvém přesměrováváni vyvestime z křišťálové koule? Hm, zkusím, moment.. |
||
| StepanMatl Profil |
#3 · Zasláno: 20. 11. 2020, 01:24:13
RewriteEngine On
RewriteCond %{HTTP_HOST} ^([^.]*)\.([^.]*)$
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [R=301,QSA,L]
RewriteCond %{ENV:HTTPS} !^.*on
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L] |
||
| Kajman Profil |
#4 · Zasláno: 20. 11. 2020, 08:12:57
Ten přechod z https na http je divný. To by mod_dir a jeho přidání lomítka neměl dělat. Když testujete ENV:HTTPS místo HTTPS, tak tam máte asi nějakou mezivrstvu a apache už neběží na https, že? Něco jako
serverfault.com/questions/847903/apache-directoryslash-redirects-https-requests-back-to-http #vypnuti pridani lomitka adresarum
DirectorySlash Off
#od apache verze 2.4 asi bude potreba odkomentovat
#RewriteOptions AllowNoSlash
#nahrada pridani lomitka adresarum, po otestovani mozno zmenit 302 na 301
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^(.*[^/])$ https://%{HTTP_HOST}/$1/ [R=302,L] |
||
| StepanMatl Profil |
#5 · Zasláno: 20. 11. 2020, 13:30:12
Možná je to nějaká specialita Onebitu... Ale jste borec, stačilo přidat
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^(.*[^/])$ https://%{HTTP_HOST}/$1/ [R=302,L]hned za RewriteEngine On a problém je vyřešen! :) Akorát když je v té složce další .htaccess, tak to nefunguje... |
||
| Kajman Profil |
#6 · Zasláno: 20. 11. 2020, 14:16:48
Ale to nefungují ani ta současná přesměrovací pravidla, když máte pro podsložku upřesněná jiná pravidla, ne?
|
||
|
Časová prodleva: 5 let
|
|||
0