これはなに

よむやつ。これ

https://reffect.co.jp/laravel/laravel-sessions-understand

読む

Session、Cookie とは

  • セッション情報をブラウザ側で持ってるのがCookie
    • あそういうことなん?
  • HTTPはステートレスなので、状態を保存するためにセッション情報を保存する方法が必要
  • これらをPHP/Laravelで触りながら理解してみるやつ

環境構築

  • 前提として、、
    • DBセットアップ、usersTBL, 認証機能は組み込んでおく
    • その上で、sessions TBLをつくる
      • id
      • user_id
      • ip_address
      • user_agent
      • payload
      • last_activity

Session Driver の変更

  • sessionの保存先はいろいろある
    • ファイル、データベース、Cookie、redis
      • Cookie???
  • 設定方法
    • .envのSESSION_DRIVERと、config/session.php

セッションとCookieを目で確認

  • ルートディレクトリにアクセスし、開発者ツールで確認可能
    • applicationsタブから確認可能
  • Cookieのなまえ
    • 設定ファイルで変更可能。デフォルトではlaravel_session
  • sessions TBLにも色々入ってる
    • なおsession_idはクッキー側では暗号化されているので目で見てもわからんよ
    • 暗号化してるのはmiddlewareだよ

middleware

  • middlewareとしてセッションとかクッキーは認証をやるよ
    • middlewareはapp/Http/Kirnelにかいてあるよ
    • グローバルなやつとか、web用api用とか
      • sessionやCookieはweb用のほうに書かれてる