Latest Post

Tăng thứ hạng và truy cập tự nhiên với 10 phương pháp SEO hay nhất Kiếm Tiền Online (mmo): Khái Niệm và Các Hình Thức Phổ Biến

Trong Ruby on Rails, mặc định, phiên làm việc được lưu trữ trong cookie trên trình duyệt của người dùng, mang theo rủi ro về an ninh dữ liệu. Hơn nữa, giới hạn dung lượng cookie của trình duyệt là 4kb, vượt quá sẽ gây lỗi và không thể lưu thêm thông tin phiên làm việc. Để giải quyết vấn đề này, việc lưu trữ phiên trên cơ sở dữ liệu hoặc Redis được đề xuất.

Trong bài viết này, trang web vinascript.com sẽ hướng dẫn cách lưu trữ phiên trên Redis Server, một ứng dụng lưu trữ dữ liệu trong bộ nhớ.

Hướng dẫn cài đặt Redis Server

Tiền đề bài viết này là mình sử dụng Ubuntu 16.04, và đã cài đặt Ruby on Rails trên Ubuntu

sudo apt-get install redis-server redis-tools

Kiểm tra Redis đã cài đặt thành công chưa? Sử dụng lệnh redis-cli ping. Nếu kết quả trả về “PONG” như bên dưới là chúng ta đã cài đặt thành công.

Cấu hình Ruby on Rails sử dụng Redis

Sửa file Gemfile của Ruby on Rails thêm dependency của Redis

# Redis store
gem 'redis-rails'
gem 'redis-store', '~> 1.4.0'

– Chạy command bundle để update lại gem

bundle update

– Tạo file có đường dẫn: config/initializers/session_store.rb với nội dung như bên dưới

Rails.application.config.session_store :redis_store,
                                       secure: false,
                                       servers: redis://127.0.0.1:6379/0/session,
                                       expire_in: 604800

Bây giờ dữ liệu của session trong ứng dụng Rails của bạn đã được lưu trên Redis, thay cho lưu trên Cookie của trình duyệt rồi đấy. 🙂

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *