Laravel 세션


개념

Laravel session
라라벨 세션
  • 라라벨 세션의 백엔드로 Memcached, Redis, database 등 다양한 저장소 사용가능
  • 기본값은 파일(file)이며, .env 파일에 SESSION_DRIVER를 지정하여 변경가능

session.php

<?php
return [
    'driver' => env('SESSION_DRIVER', 'file'),
    'lifetime' => 120,
    'expire_on_close' => false,
    'encrypt' => false,
    'files' => storage_path('framework/sessions'),
    'connection' => null,
    'table' => 'sessions',
    'lottery' => [2, 100],
    'cookie' => 'laravel_session',
    'path' => '/',
    'domain' => null,
    'secure' => false,
];
→ 세션 드라이버는 SESSION_DRIVER 설정[1]을 따름
→ 세션의 유효시간은 120분
→ 세션 정보는 파일로 보관하며 위치는 storage/framework/sessions 폴더 (기본값 ★)
→ 세션 정보가 저장되는 테이블명은 sessions

세션 드라이버 설정

  • 세션 설정은 config/session.php에서 한다.
  • 세션 드라이버는 어디에 세션 데이터를 저장할지 지정함
  • 이외에 커스텀 세션 드라이버를 추가하여 MongoDB도 사용가능
드라이버 설명
file 세션이 storage/framework/sessions에 저장됨. (기본값)
cookie 암호화된 세션 정보를 cookie로 저장함
database 데이터베이스에 저장함
apc
memcached memcached에 저장함. 빠름
redis redis에 저장함. 빠름
array 간단한 PHP 배열에 저장. 요청간에 값이 유지되지는 않음.

같이 보기

참고

  1. 이것도 - 변경하지 않았다면 - 기본값은 file임