私は新しい大きなアプリを開発し始めており、今度はLaravel=を使用しています。これが初めてです。
すべてのページにHTTPSを強制する必要があります。コードからでも.htaccessでも重要ではありませんが、簡単なチュートリアルを見つけることができません。
公式ドキュメントでは、この問題について言及していません。
情報については、私のacutal .htaccessは
<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}]
</IfModule>
私の質問はLaravel 5に固有です。なぜなら、この.htaccessファイルをどこでどのように変更するかわからないからです。また、これがLaravelまたはif Laravelには、HTTPを処理するための設定に固有のものがあります。
したがって、私の質問を閉じないで、Laravel=特定のトピックにもっと従うようにしてください。
このファイルを修正する簡単な方法を投稿できる場合AND/OR Laravel configs in https。
しかし、要するに、私はすべての通話をHTTPSで強制的に通過させたいと思います。
これを.htaccess
ファイルに追加する必要があります。
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://YOURWEBSITEDOMAIN/$1 [R,L]
これを参照してください: http://www.inmotionhosting.com/support/website/ssl/how-to-force-https-using-the-htaccess-file
このコードを.htaccessファイルに追加してみてください。
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_Host}%{REQUEST_URI} [L,R=301]
すべてのURLをhttpsでレンダリングする場合。最も簡単な方法は、app/Providers/AppServiceProvider.phpのboot()関数で以下のコードを使用することです:
\ URL :: forceScheme( 'https');
ファイル.htaccessを変更します
次の場所でドミンを変更します。
RewriteCond%{HTTP_Host} mydomain.com [NC]
RewriteRule ^(。*)$ https:// mydomain / $ 1 [R、L]
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews
</IfModule>
RewriteEngine On
# Added to Force HTTPS
RewriteCond %{HTTP_Host} mydomain\.com [NC]
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://mydomain/$1 [R,L]
# 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}]
</IfModule>
これをAppServiceProviderのブートメソッドに追加します
if($this->app->environment('production'))
{
$this->app['request']->server->set('HTTPS','on');
}
これは私のために働いた
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^(.*)$ public/$1 [L]
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_Host}%{REQUEST_URI} !^public [L,R=301]
</IfModule>
最初にここで検索してみてください。同じ問題についての答えがたくさんある質問があります。
https://stackoverflow.com/a/4399158/5892849
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_Host}%{REQUEST_URI} [L,R=301]
.envファイルの「APP_URL」を変更してみてください
APP_URL = http://example.com
に
APP_URL = https://example.com