Drukowana wersja tematu

Kliknij tu, aby zobaczyć temat w orginalnym formacie

Forum PHP.pl _ Frameworki _ [inny][laravel 5.6] SSL i public

Napisany przez: miccom 20.08.2018, 20:12:40

Cześć.

Poszukuję rozwiązania ale ciężko idzie ;/

Mam projekt w katalogu public_html, a nim cały laravel z katalogiem public

W katalogu public_html mam plik .htaccess o treści:

  1. RewriteEngine On
  2. RewriteCond %{HTTP_HOST} ^(www\.)?moja_strona\.pl$ [NC]
  3. RewriteCond %{REQUEST_FILENAME} !/public/
  4. RewriteRule ^(.*)$ /public/$1 [L]


W katalogu public mam .htacces o treści:
  1. <IfModule mod_rewrite.c>
  2. <IfModule mod_negotiation.c>
  3. Options -MultiViews
  4. </IfModule>
  5.  
  6. RewriteEngine On
  7.  
  8. # Redirect Trailing Slashes If Not A Folder...
  9. RewriteCond %{REQUEST_FILENAME} !-d
  10. RewriteRule ^(.*)/$ /$1 [L,R=301]
  11.  
  12. # Handle Front Controller...
  13. RewriteCond %{REQUEST_FILENAME} !-d
  14. RewriteCond %{REQUEST_FILENAME} !-f
  15. RewriteRule ^ index.php [L]
  16. </IfModule>


I chciałbym przekierować cały ruch na https.
Mam uruchomiony Lets Encrypt Support na katalogu public_html

Jak zmodyfikować i który .htaccess?
Będę wdzięczny za pomoc.

Hmm.

W katalogu public dałem tak:

  1. Options +FollowSymLinks
  2. RewriteEngine On
  3.  
  4. RewriteCond %{REQUEST_FILENAME} !-d
  5. RewriteCond %{REQUEST_FILENAME} !-f
  6. RewriteRule ^ index.php [L]


a w katalogu public_html dałem tak:
  1. RewriteEngine On
  2. RewriteCond %{HTTP_HOST} ^moja_strona.pl$ [NC]
  3. RewriteRule ^(.*)$ [url="http://www.moja_strona.pl/$1"]http://www.moja_strona.pl/$1[/url] [R=301,L]
  4. RewriteRule ^(.*)$ /public/$1 [L]


I jeśli w google wpisuję moja_strona.pl ( bez przedrostka www ) to otwiera mi się strona:
https://moja_strona.pl/public/ ( bez www. )

Jeśli wykasuję z adresu https://moja_strona.pl/public/

to adres pokazuje mi się właściwy ( z www. ):
https://www.moja_strona.pl/


jeśli w pasku przeglądarki wpiszę www.moja_strona.pl to ładnie mnie przekieruje na laravel

I co nie bangla?

Ale trudne pytania zadaję smile.gif
że nikt nie zna odpowiedzi ?

Napisany przez: Rysh 7.11.2018, 20:33:19

Przepraszam, że odkopuję temat.

Cytat
I jeśli w google wpisuję moja_strona.pl ( bez przedrostka www ) to otwiera mi się strona:
https://moja_strona.pl/public/ ( bez www. )

Jeśli wykasuję z adresu https://moja_strona.pl/public/

to adres pokazuje mi się właściwy ( z www. ):
https://www.moja_strona.pl/


jeśli w pasku przeglądarki wpiszę www.moja_strona.pl to ładnie mnie przekieruje na laravel


Czy ja dobrze rozumiem, że zrobiłeś vhosta do katalogu public_html/(nazwa_folderu_z_frameworkiem)/public ?

Wracając do tematu, ja dodatkowo wymusiłem we frameworku force https: https://stackoverflow.com/questions/28402726/laravel-5-redirect-to-https

Napisany przez: miccom 30.09.2019, 21:36:09

Cytat(Rysh @ 7.11.2018, 21:33:19 ) *
Przepraszam, że odkopuję temat.



Czy ja dobrze rozumiem, że zrobiłeś vhosta do katalogu public_html/(nazwa_folderu_z_frameworkiem)/public ?

Wracając do tematu, ja dodatkowo wymusiłem we frameworku force https: https://stackoverflow.com/questions/28402726/laravel-5-redirect-to-https



Mam katalog /moja_strona/ w którym znajduje się katalog /public_html/ a w nim znajduje się .htaccess o treści
  1. <IfModule mod_rewrite.c>
  2. RewriteEngine on
  3. RewriteRule ^(.*)$ public/$1 [L]
  4. RewriteCond %{HTTPS} !=on
  5. RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} !^public [L,R=301]
  6. </IfModule>


W Katalogu /public_html/ oprócz powyższego pliku znajduje się katalog /public/ a w nim .htaccess o treści
  1. <IfModule mod_rewrite.c>
  2. <IfModule mod_negotiation.c>
  3. Options -MultiViews
  4. </IfModule>
  5.  
  6. RewriteEngine On
  7.  
  8. # Force SSL
  9. RewriteCond %{HTTPS} off
  10. RewriteRule (.*) https://%{HTTP_HOST}%{ [R=301,L]
  11.  
  12. # Redirect Trailing Slashes If Not A Folder...
  13. RewriteCond %{REQUEST_FILENAME} !-d
  14. RewriteRule ^(.*)/$ /$1 [L,R=301]
  15.  
  16. # Handle Front Controller...
  17. RewriteCond %{REQUEST_FILENAME} !-d
  18. RewriteCond %{REQUEST_FILENAME} !-f
  19. RewriteRule ^ index.php [L]
  20. </IfModule>


Co robię źle?
Jak mam dobrze ustawić katalogi aby przekierowanie SSL dobrze zadziałało?

Napisany przez: Rysh 9.12.2019, 21:20:13

Nie wiem dlaczego Twoje public_html wskazuje na folder projektu, a nie na folder public w projekcie - to istotne!
A force SSL zrób w Laravelu skoro z .htaccess nie działa, może to nginx.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)