【Laravel】route関数を使用する場合のSSL化対策
SSL化する前の状態
bladeテンプレートのformのaction属性をroute
関数で記載。
route
関数についてはこちらの記事で説明しています。
<form method="post" action="{{ route('profile.create') }}">
上記の記述だと、URLがhttp://・・・
になってしまいます。
SSL化されていませんので遷移先の画面では遷移先では下記画面が表示されます。
ちなみに、「このまま送信」ボタンをクリックするとエラーになります。
エラーの原因は、action属性で指定したroute先にリダイレクトされているため(GETリクエストのため)です。
(formのaction属性にパスを直で指定した場合は、URLはhttps://・・・
でした。なのでroute関数を使用しない場合は、今回のSSL化対策はしなくても大丈夫だと思います。)
SSL化対策
App/Providers/AppServiceProvider.php
に以下を追記する必要があります。
<?php
namespace App\Providers;
use Illuminate\Routing\UrlGenerator;
class AppServiceProvider extends ServiceProvider
public function boot(UrlGenerator $url)
{
$url->forceScheme('https');
}
}
追記した後に、再度URLを確認するとhttps://・・・
になっていました。
おわりに
今回、route
関数を使用した時のSSL化対策を記載しました。似たような関数でurl
関数がありますが、こちらもSSL化対策が必要だそうです。対策する場合は、下記記事が参考になると思います。
Laravelで作ったサービスをSSL化した時にやったことと参考記事一覧
参考
Author And Source
この問題について(【Laravel】route関数を使用する場合のSSL化対策), 我々は、より多くの情報をここで見つけました https://qiita.com/tamakiiii/items/6c31425698660ead643b著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .