1. Cấu hình Session Laravel (Configuration)
https://viblo.asia/p/tap-19-session-laravel-m68Z0xmAZkG
Rất vui được gặp lại các bạn trong series "Hành trình chinh phục Laravel framework" của mình. Ngày hôm nay, chúng ta sẽ cùng nhau tìm hiểu về "Session" trong Laravel, đây là một component hay sử dụng hầu hết ở các ứng dụng hiện nay.
I. Giới thiệu (Introduction)
Laravel cung cấp cho chúng ta các khuôn mẫu để có thể tương tác với session. Trong Laravel có nhiều driver để lưu trữ session. Các bạn có thể mở file config/session.php
lên và sẽ thấy các driver mà Laravel cho phép ta sử dụng:
Trong tập này mình chỉ giới thiệu về các core driver như file
, cookie
, database
và array
, còn về các package khác thì mình có thể sẽ nói ở các tập sau hoặc bạn có thể tự tìm hiểu chúng.
1. Cấu hình (Configuration)
File cấu hình session trong ứng dụng Laravel là config/session.php
. Dưới đây là một số driver hay sử dụng trong Laravel:
file
: các session sẽ được lưu trữ trong file tại thư mụcstorage/framework/sessions
. Bạn có thể thay đổi thư mục lưu trữ ở bên dưới:cookie
: session sẽ được lưu trữ trong cookie an toàn, được mã hóa.database
: các session sẽ được lưu trữ trong database.memcached
/redis
: session sẽ hoạt động tốt hơn nếu lưu vào các driver này, dựa trên cache.array
: các session sẽ được lưu trữ trong mảng PHP và không được duy trì.
Mặc định thì Laravel sử dụng driver
file
, nhưng trong thực tế với các ứng dụng lớn thường hay sử dụng các package nhưredis
haymemcached
để tối ưu hiệu năng. Còn đối với driverarray
thường được sử dụng trong quá trình test.
Để chọn driver session cho ứng dụng, bạn chỉ cần thay đổi tại file .env
.
Ngoài ra còn có các thiết lập mà bạn cần quan tâm trong session. Chẳng hạn như thiết lập thời gian sống của session thông qua SESSION_LIFETIME
ở file .env
(được tính bằng phút).
Bạn có thể thiết lập xóa bỏ các session sau khi trình duyệt kết thúc bằng cách thay đổi giá trị bên dưới thành true
:
Nếu bạn muốn tăng tính bảo mật khi lưu trữ các session, đặc biệt với driver file
, bạn có thể thiết lập giá trị true
cho cấu hình bên dưới:
Với cấu hình này, các session trước khi lưu trữ sẽ được mã hóa.
Last updated