Ich habe ein Laravel 5.2-Projekt. Vor kurzem habe ich ein SSL-Zertifikat auf meiner Website installiert, also wenn ich https://example.com
in den Browser tippe, funktioniert es, aber wenn ich example.com
schreibe, verbindet es sich durch HTTP.Umleiten von http zu https in Laravel 5.2
dass zu beheben, habe ich diese Zeilen in meine .htaccess
Datei:
RewriteCond %{HTTPS} !=on
RewriteRule^https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Danach, wenn ich example.com
geben, leitet der Browser mich https://example.com
. Das ist perfekt.
Das Problem ist, wenn ich versuche, auf die URL http://example.com/download/get/book/volume2
zuzugreifen, leitet es mich nicht zu HTTPS. Es leitet mich auf die Indexseite um. Wenn ich die s
von https
in der URL hinzufügen, funktioniert es gut, aber ich brauche die App, um mich von HTTP zu HTTPS umzuleiten.
Die Route in Routen-Datei:
Route::get('download/get/book/{book}'
Dieser Weg öffnet eine PDF-Datei, die ich in privates/storage
Ordner in den Browser-Tab haben.
EDIT:
Meine .htaccess-Datei:
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews
</IfModule>
RewriteEngine On
# Redirect Trailing Slashes If Not A Folder...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/$ /$1 [L,R=301]
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule^index.php [L]
# Handle Authorization Header
RewriteCond %{HTTP:Authorization} .
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
# require SSL
RewriteCond %{HTTPS} !=on
RewriteRule^https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Haben Sie andere '. Htaccess 'Dateien in einem dieser" Unterverzeichnisse "? (Sind das physische Unterverzeichnisse?) – MrWhite
Nein, ich habe einen "public_html" Ordner, wo ist meine .htaccess und ein "privates" Ordner, wo ich alle Ansichten, Controller, etc. habe –
In diesem Fall, wo in Ihrem '.htaccess' Datei haben Sie diese Direktiven hinzugefügt? Bitte fügen Sie den Inhalt Ihrer '.htaccess' Datei Ihrer Frage bei. – MrWhite