.htaccess przekierowanie https

0

Witam
mam taki kod w htaccess

Options +FollowSymLinks
# Turn on the RewriteEngine
RewriteEngine On
#  Rules
RewriteRule ^([^/\.]+)/([^/\.]+)/([^/\.]+)/?$ main_site.php?var1=$1&var2=$2&var3=$3 [L]

Url wyglada tak

http://thx.com.pl/kalkulator/a/b/c/

Chciałem zmienić żeby przekierowywało na https, zrobiłem więc tak

Options +FollowSymLinks
# Turn on the RewriteEngine
RewriteEngine On
#  Rules

RewriteRule ^([^/\.]+)/([^/\.]+)/([^/\.]+)/?$ https://%{SERVER_NAME}/kalkulator/main_site.php?var1=$1&var2=$2&var3=$3 [L]

I w tym momencie adres wygląda tak

https://thx.com.pl/kalkulator/main_site.php?var1=a&var2=b&var3=c

Niestety jakoś wtedy strona przestaje mi działać poprawnie

0

Często jest tak, że do https jest oddzielny katalog niż do http, dlatego ten od https trzeba dowiązać do http, żeby nie było wczytywane z dwóch różnych stron.

Przykładowo, jeżeli na serwerze, w katalogu domeny masz katalog private_html i public_html, wczytywanie dla https odbywa się po przez private. Robimy proste dowiązanie via CLI

ln -s public_html private_html

Katalog private należałoby w tej sytuacji uprzednio usunąć.

Dodatkowo, zamiast modyfikować dotychczasowe konfigi, wrzuć taki kod:

RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Dzięki temu wymusisz przekierowanie nie naruszając poprzedniego.

0

ja zawsze pykam coś takiego

RewriteCond %{SERVER_PORT} 80

RewriteRule ^(.*)$ https://thx.com.pl/kalkulator/a/b/c/$1 [R,L]

RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]

RewriteRule ^(.*)$ https://%1/$1 [R=301,L]

1 użytkowników online, w tym zalogowanych: 0, gości: 1