Prosta aplikacja internetowa- wymuszenie SSL


(Pawlus1993) #1

Witam wszystkich forumowiczów,

 

Napisałem prostą aplikację internetową z logowaniem, po udanym logowaniu jesteśmy przekierowani do strony z formularzem kontaktowym, także nic skomplikowanego. Aplikację testuję na XAMPP. Projekt składa się z kilku plików: form.php, login.php, logout.php oraz chroniona_strona.php w folderze htdocs\Aplikacja1.

 

Jak wymusić, aby ze stroną login.php połączenie było szyfrowane? Utworzyłem w pliku .htaccess:

RewriteCond %{HTTPS} on
RewriteRule ^/(^[login|form]) http://%{HTTP_HOST}%{REQUEST_URI} [R,L]
 
RewriteCond %{HTTPS} on
RewriteCond %{REQUEST_URI} \.(gif|png|jpg|css|js)$
RewriteRule (.*) http://%{HTTP_HOST}%{REQUEST_URI} [R,L]

Plik ten znajduje się w htdocs i htdocs\Aplikacja1  , jednak nie działa wymuszenie bezpiecznego połączenia. Jakieś pomysły, sugestie? W tej kwestii jestem kompletnym laikiem (.htaccess i SSL).

 

Z góry dzięki za pomoc :slight_smile:


(roobal) #2

Przekierowanie na https zaleca się robić na Vhost zamiast w htaccess.


(Jim1961) #3

Zaleca się też wyłączanie obsługi htaccess, tylko co to wnosi do wątku?


(roobal) #4

To, że wystarczy zrobić redirect permanent i nie trzeba mieć htaccess i serwer może działać wydajniej. Właśnie z tego ostatniego powodu zaleca sie korzystanie z redirect na VHoscie zamiast w htaccess.

Jeśli z htaccess nie działa, sprawdź czy masz włączony mod_rewrite.

RewriteCond %{HTTPS} on

Ustawiasz na off lub na !=on. Ta linijka sprawdza czy masz połączenie https, jeśli nie, przekierowuje z http na https zgodnie z ustawioną regułą.


(GioWDS) #5
RewriteRule ^/(^[login|form]) http://%{HTTP_HOST}%{REQUEST_URI} [R,L]

to w końcu HTTP czy HTTPS ?