Laravelのミドルウェア(middleware)とは、ルート→コントローラー→ブレードというファイルの橋渡しの途中に割り込むファイルの事です。
Laravelのミドルウェア(Middle ware)とは?
この画像のように、本来はページにアクセスがあった場合、web.phpからそのままControllerに命令が渡りますが、例えば、会員オンリーページなどにはログイン画面を表示したいですよね。
こういう、通常のファイルのやり取りに割り込むプログラムがミドルウェアです。
→Laravel初心者が絶望するController,Blade,Routesの関係が図解でよく分かる!
Laravelのミドルウェアの場所は?作成方法は?
このミドルウェアは、app\Http\Middlewareフォルダの中に入ってます。
例えば、Authenticate.phpは、ログイン画面を表示するミドルウェアです。
もし、独自のミドルウェアを自分で作成したい場合は、
php artisan make:middleware Myfile
のように、コマンドを打つ事で、Middlewareフォルダ内に自動生成されます。
Myfile部分は好きな名前に変更してください。通常、先頭は大文字にします。
では、実際にログイン画面を表示したい時にミドルウェアを使う方法を見ていきましょう。
Laravelのミドルウェアを使ってログイン画面を表示する
Laravelのミドルウェアを使えば、メンバーオンリーページや、
ログイン済みのユーザーにのみ表示したコンテンツがある場合、
ミドルウェアAUTHという機能を使う事で、
アクセス前にログインページを自動表示させる事ができるようになります。
やり方については下の記事で解説してるので、実戦してみてくださいね。
→Laravelで特定ページへ飛ぶ前にログイン表示3方法+ハッキング対策
→Laravelでログイン後、元いた同じページにリダイレクトバックする方法