Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [inne][PHP].htaccess przekierowanie na httpS
adamiakadam00
post
Post #1





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 9.02.2016

Ostrzeżenie: (0%)
-----


Witam wszystkich. Od razu powiem że nie jestem specjalistą w programowaniu (jakimkolwiek) i mam problem. (IMG:style_emoticons/default/baaasmiley.gif)

Kupiłem skrypt (a dokladnie licencje - skrypt ogloszeniowy - framework kohana - bardzo skomplikowany) - całkowicie niedostosowany do htpps (zdanie wlasciciela). Po jakims czasie udalo mi sie na serwerach KEI.PL wymusić SSL dla calej strony (z panelu administratora konta) i dostosowac wszystkie niedzialajace elementy skrytpu. Działa perfekt. Niestety. Kei nie chce mi wydac umowy o powierzeniu przetwarzania danych osobowych. Twierdzą że to tylko dla firm. Doszedłem do wniosku że wyemigruję na coś tańszego i co da mi ten papier od ręki. Home.pl daje. Niestety w ich panelu nie ma wymuszenia https. Twierdzą że trzeba to ręcznie wymusić przez htacces.

Ew. może ktoś zna hosting który daje wymuszanie https dla domeny (spod panelu administratora) i który daje papier na powierzenie przetwarzania danych osobowych?


U mnie htacces wygląda tak:

RewriteEngine On

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

Zmiana http na https daje przekierowanie z www.serwer**** na https bez www lecz przy logowaniu/wylogowaniu, wejsciu do panelu admina serwer***.home.pl/admin wyłącza https. Strona wchodzi wtedy w http i z niego już nie wychodzi. Natomiast sprawa z przekierowaniami jest bardziej skomplikowana bo skrypt obsluguje dodawanie subdomen (bardzo fajna sprawa). Próbowałem wielu kombinacji i żadna z nich nie działa. Ma ktoś jakiś pomysł? Napisałem do adminów kei jak działa u nich wymuszanie https bo tam działa to perfekt. :/

Z góry dziękuję za wszystkie opowiedzi.

Ten post edytował adamiakadam00 9.02.2016, 21:58:52
Go to the top of the page
+Quote Post
2 Stron V   1 2 >  
Start new topic
Odpowiedzi (1 - 19)
session
post
Post #2





Grupa: Zarejestrowani
Postów: 112
Pomógł: 22
Dołączył: 11.04.2010
Skąd: Tarnów

Ostrzeżenie: (0%)
-----


Nie rozumiem o co dokładnie Ci chodzi, ale przekierowanie wszystkich adresów na https to coś takiego:

Kod
RewriteEngine On

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


Cytat
.htaccess files acts [...] for the directory that they are in, or all sub-directories

Zatem o ile subdomeny odnoszą się do tego samego zasobu to też powinno działać.

Ten post edytował session 11.02.2016, 10:03:25
Go to the top of the page
+Quote Post
adamiakadam00
post
Post #3





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 9.02.2016

Ostrzeżenie: (0%)
-----


Bardzo dziękuję za odpowiedź ale niestety nie zadziałało. Wchodzi pięknie na https ale wywala w firefoxie - nieprawidłowe przekierowanie. Poniżej wkleiłem resztę kodu. Bardzo proszę o pomoc - jedyny sposób a wymuszenie jaki znam obecnie to wymuszenie spod panelu administratora na serwerach kei.pl przy czym nie mogę na kei pozostać bo nie chcą mi wydać dodatkowej umowy na powierzenie przetwarzania danych osobowych a z tego tytułu - jako że ustawa wymaga szyfrowania połączenia - koło się zamyka.
CODE
# Turn on URL rewriting
RewriteEngine On

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


# Installation directory
RewriteBase /

# Protect hidden files from being viewed
<Files .*>
Order Deny,Allow
Deny From All
</Files>

# Protect application and system files from being viewed
RewriteRule ^(?:application|modules|system)\b.* index.php/$0 [L]

RewriteRule ^(?:templates)\b.* index.php/$0 [L]

# Allow any files or directories that exist to be displayed directly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

# Rewrite all other URLs to index.php/URL
RewriteRule .* index.php/$0 [PT]


Ten post edytował adamiakadam00 12.02.2016, 10:01:36
Go to the top of the page
+Quote Post
trueblue
post
Post #4





Grupa: Zarejestrowani
Postów: 6 806
Pomógł: 1828
Dołączył: 11.03.2014

Ostrzeżenie: (0%)
-----


Obecne przekierowanie, które masz prowadzi do pętli przekierowań (http->https->https->https...)

Kod
RewriteCond %{SERVER_PORT} ^80$
RewriteRule ^(.*)$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R=301]
Go to the top of the page
+Quote Post
adamiakadam00
post
Post #5





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 9.02.2016

Ostrzeżenie: (0%)
-----


Bardzo dziękuję - zadziałało!!!
Natomiast poprosiłbym jeszcze o wyłączenie subdomen spod HTTPS bo nie mam wildcarda tylko zwykłe DV.

OBIECUJĘ DOBRE PIWO (IMG:style_emoticons/default/smile.gif)

www.serwer1667331.home.pl/

www.dealer.serwer1667331.home.pl/
Go to the top of the page
+Quote Post
trueblue
post
Post #6





Grupa: Zarejestrowani
Postów: 6 806
Pomógł: 1828
Dołączył: 11.03.2014

Ostrzeżenie: (0%)
-----


Kod
RewriteCond %{SERVER_PORT} ^80$
RewriteCond %{SERVER_NAME} ^www.serwer1667331.home.pl$
RewriteRule ^(.*)$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R=301]


Ten post edytował trueblue 12.02.2016, 10:42:45
Go to the top of the page
+Quote Post
adamiakadam00
post
Post #7





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 9.02.2016

Ostrzeżenie: (0%)
-----


Niestety nie zadziałało. Nadal w subdomenie wymusza https.

www.dealer.serwer1667331.home.pl/
Go to the top of the page
+Quote Post
trueblue
post
Post #8





Grupa: Zarejestrowani
Postów: 6 806
Pomógł: 1828
Dołączył: 11.03.2014

Ostrzeżenie: (0%)
-----


Kod
RewriteCond %{SERVER_PORT} ^80$
RewriteCond %{HTTP_HOST} ^www.serwer1667331.home.pl$
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Go to the top of the page
+Quote Post
adamiakadam00
post
Post #9





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 9.02.2016

Ostrzeżenie: (0%)
-----


W dalszym ciągu to samo :/
dealer.serwer1667331.home.pl
Go to the top of the page
+Quote Post
trueblue
post
Post #10





Grupa: Zarejestrowani
Postów: 6 806
Pomógł: 1828
Dołączył: 11.03.2014

Ostrzeżenie: (0%)
-----


Wyczyść cache przeglądarki, albo spróbuj na innej.
Go to the top of the page
+Quote Post
adamiakadam00
post
Post #11





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 9.02.2016

Ostrzeżenie: (0%)
-----


No niestety też nie działa.

Poza tym nie działa przekierowanie z www - wtedy wyskakuje że połączenie niezaufane.

Mógłbym prosić o skonfigurowanie przekierowania z www na bez www i wtedy całość na https?
Go to the top of the page
+Quote Post
trueblue
post
Post #12





Grupa: Zarejestrowani
Postów: 6 806
Pomógł: 1828
Dołączył: 11.03.2014

Ostrzeżenie: (0%)
-----


Kod
RewriteCond %{SERVER_PORT} ^80$
RewriteCond %{HTTP_HOST} ^(www\.)?serwer1667331.home.pl [NC]
RewriteRule ^(.*)$ https://www.serwer1667331.home.pl%{REQUEST_URI} [L,R=301]

Go to the top of the page
+Quote Post
adamiakadam00
post
Post #13





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 9.02.2016

Ostrzeżenie: (0%)
-----


To też nie zadziałało ale używając mojej mikro-wiedzy w tym temacie zadziałało coś innego:

CODE
RewriteCond %{SERVER_PORT} ^80$ [OR]
RewriteCond %{SERVER_NAME} ^www.serwer1667331.home.pl$
RewriteRule ^(.*)$ https://serwer1667331.home.pl%{REQUEST_URI} [L,R=301]


Tylko nie umiem wyłączyć spod tego subdomeny. Przy tym ustawieniu subdomenę wyrzuca do strony głównej :/

Ten post edytował adamiakadam00 12.02.2016, 13:28:23
Go to the top of the page
+Quote Post
trueblue
post
Post #14





Grupa: Zarejestrowani
Postów: 6 806
Pomógł: 1828
Dołączył: 11.03.2014

Ostrzeżenie: (0%)
-----


W ten sposób żądanie po http lub żądanie z www. zostanie przekierowane na https.


Pokaż cały .htaccess.

Go to the top of the page
+Quote Post
adamiakadam00
post
Post #15





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 9.02.2016

Ostrzeżenie: (0%)
-----


CODE
# Turn on URL rewriting
RewriteEngine On

RewriteCond %{SERVER_PORT} ^80$ [OR]
RewriteCond %{SERVER_NAME} ^www.serwer1667331.home.pl$
RewriteRule ^(.*)$ https://serwer1667331.home.pl%{REQUEST_URI} [L,R=301]



# Installation directory
RewriteBase /

# Protect hidden files from being viewed
<Files .*>
Order Deny,Allow
Deny From All
</Files>

# Protect application and system files from being viewed
RewriteRule ^(?:application|modules|system)\b.* index.php/$0 [L]

RewriteRule ^(?:templates)\b.* index.php/$0 [L]

# Allow any files or directories that exist to be displayed directly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

# Rewrite all other URLs to index.php/URL
RewriteRule .* index.php/$0 [PT]
Go to the top of the page
+Quote Post
trueblue
post
Post #16





Grupa: Zarejestrowani
Postów: 6 806
Pomógł: 1828
Dołączył: 11.03.2014

Ostrzeżenie: (0%)
-----


.htaccess jest ok.
Nie masz ustawionego wymuszania w aplikacji?
Go to the top of the page
+Quote Post
adamiakadam00
post
Post #17





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 9.02.2016

Ostrzeżenie: (0%)
-----


Co do aplikacji, wg. autora ona w ogole nie jest dostosowana do SSL i nie ma opcji. Wg. autora skrytpu nie widzi on nawet możliwości przystosowania go do SSL. Mam projekt ktory buduję po godzinach i udało mi się dostosować do SSL całą stronę. Niestety dostosowanie do SSL zaczynało się od wymuszenia https przez panel administracyjny kei.pl - inne hostingi nie posiadają tej opcji i musialem zainteresowac sie htaccess.

Ale udało mi się wymyśleć działające ustawienia i dla poddomeny i dla domeny. Dla strony działające przekierowanie z http i http+www na https(bez-www), oraz nieużywanie https dla subdomeny zadziałało:
CODE
RewriteEngine On

RewriteCond %{SERVER_NAME} ^serwer1667331.home.pl$[OR]
RewriteCond %{SERVER_NAME} ^www.serwer1667331.home.pl$
RewriteRule ^(.*)$ https://serwer1667331.home.pl%{REQUEST_URI} [L,R=301]



Tylko ciężej będzie z wymuszeniem przekierowania subdomeny z www na bez www ale to już nie jest tak wielki problem. Subdomena nie powinna być na https bo nie mam wildcard. Jak masz jakis pomysl to poprosze (IMG:style_emoticons/default/smile.gif)

Podaj na priv nr. konta- przeleje na dobre piwko.

Ten post edytował adamiakadam00 12.02.2016, 14:19:00
Go to the top of the page
+Quote Post
trueblue
post
Post #18





Grupa: Zarejestrowani
Postów: 6 806
Pomógł: 1828
Dołączył: 11.03.2014

Ostrzeżenie: (0%)
-----


To jest dokładnie to samo co to:
Kod
RewriteCond %{HTTP_HOST} ^(www\.)?serwer1667331.home.pl [NC]
RewriteRule ^(.*)$ https://www.serwer1667331.home.pl%{REQUEST_URI} [L,R=301]


Nie wpada Ci obecnie w pętlę przekierowań?

Ten post edytował trueblue 12.02.2016, 14:21:27
Go to the top of the page
+Quote Post
adamiakadam00
post
Post #19





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 9.02.2016

Ostrzeżenie: (0%)
-----


Nie wpada na szczęście.

To co napisałeś odwołuje się do https://www.serwer1667331.home.pl a mi zależy na sztywnym przekierowaniu na adres bez www.

Natomiast edycja pod ominięcie www nie działa. (wg. Twojego ostatniego postu).
CODE

RewriteCond %{HTTP_HOST} ^(www\.)?serwer1667331.home.pl [NC]
RewriteRule ^(.*)$ https://serwer1667331.home.pl%{REQUEST_URI} [L,R=301]


Ten post edytował adamiakadam00 12.02.2016, 14:41:05
Go to the top of the page
+Quote Post
trueblue
post
Post #20





Grupa: Zarejestrowani
Postów: 6 806
Pomógł: 1828
Dołączył: 11.03.2014

Ostrzeżenie: (0%)
-----


Mój poprzedni ("ostatni") post wskazywał tylko, że to rozbiłeś to co poprzednio napisałem na dwie reguły i idziesz w złym kierunku, bo pozbyłeś się sprawdzania portu/https. Obydwa rozwiązania powinny wpadać w pętlę przekierowań - obydwa są niepoprawne.

To co masz w ostatni poście (powyżej), jest analogiczne do powyższych - znów wpadnie w pętlę przekierowań po przekierowani na bez www.
Go to the top of the page
+Quote Post

2 Stron V   1 2 >
Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 25.08.2025 - 06:43