저는 인증 용으로 devise를 사용하고 있으며 완벽하게 작동하는 레일 4 앱이 있습니다. 내 유일한 문제는 서버에 배포하고 사용자가 다시 로그인해야만 사용자의 세션이 손실된다는 것입니다.배포 후 Devise 세션이 끊깁니다.
방금 nginx/passenger (내 앱에서 사용하는)를 다시 시작하면 잃지 않습니다. 내 앱을 배포 할 때 잃어 버릴 수 있습니다. 배포를 위해 모든 데이터베이스를 자동으로 지우고 배치 스크립트는 사용자를 생성하는 시드 파일을 실행합니다.
우리는 현재이 종류의 행동을 받아 들일 수 있도록 응용 프로그램을 개발 중이지만 나중에 응용 프로그램이 준비 될 때 미래에는 이런 식으로하지 않을 것입니다.
재 시드로 인한 문제입니까, 아니면 다른 사항을 확인해야합니까? 암호화 된 암호가 바뀔 때마다/시드 작업이 실행될 때마다 변경되는 것을 볼 수 있습니다.이 작업은 사용자 세션이 손실되는 것과 관련이 있습니까?
우리 앱이 개발 중입니다. 프로덕션 중에있을 때 우리는 이렇게하지 않을 것입니다. 마이그레이션을 추가 할 것입니다 (메시지에 썼습니다). 우리는 변경/테스트를 너무 많이하므로이 초기 단계에서 필요합니다. 사용자의 ID는 시드에 특별히 정의되어 있으므로 사용자는 데이터베이스를 다시 시드 할 때마다 동일한 ID를 갖습니다. 우리는 secret_token을 변경하지 않고 기본값을 사용하고 있습니다. 그렇다면 왜 이런 일이 발생 했습니까? – JohnDel
@ 존 델 다른 두 가지 제안은 어때? 세션 테이블과 사용자 ID? – Subhas
우리는 session_store (이니셜 라이저 내부)로 cookie_store를 사용하고 있으며 사용자는 닦음/재 시드 전후에 동일한 ID를 사용합니다. – JohnDel