Często chcielibyśmy, żeby użytkownik nie miał szans wysłać danych w plain-text. Można to zrobić dzięki mod_rewrite – pluginowi Apache’a domyślnie zitegrowanego z większością instalacji.
Zmiany możemy wprowadzić w głównym konfigu – /etc/apache2/http.conf – wówczas docelowe linie wprowadzamy w znaczniku
jakieś dyrektywy
Alternatywnie konfig można wprowadzić do pliku .htaccess umieszczonego w interesującym nas katalogu – jedyna opcja przy hostingu.
Typowo przekierowanie powinno wyglądać tak:
RewriteEngine On RewriteCond %{HTTPS} off RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
Jednak część serwerów (np. autorski perser htaccessów dla nginxa w MyDevilu) nie rozumieją drugiej linijki prowadząc do pętli przekierowań – ERR_TOO_MANY_REDIRECTS. Rozwiązaniem jest zmiana logiki – nie protokół, a port:
RewriteCond %{SERVER_PORT} ^80$