Firebase

[Firebase][Solved] Session not persisting on firebase web hosting

Binceline 2017. 10. 29. 00:33



npm 환경



Firebase 웹 호스팅을 하면서 session 데이터를 DB에 저장하고 싶을 때 connect-session-firebase 모듈을 이용하면 편하다.


그래서 이걸 사용하던 중, 


Local에서 테스트할 때는 DB에 session 데이터가 저장되고, redirection이 일어나도 잘 유지되는데,


firebase deploy를 하여 실제 호스팅을 하면 session이 유지되지 않고 redirection이 일어날 때마다 새로 생성되는 문제가 발생했었다.

또, firebase는 자체적으로 https를 이용하도록 해 주는데, 

혹시 https에서의 express-session 사용 옵션이 잘못되었는지 확인해 보았다.

https 상에서는 secure 옵션을 true로 설정해 주어야 한다.

* 2017.10.29 추가 내용 : 직접 ssl을 이용해 https를 구현하면 secure 옵션을 true로 설정해 주어야 하지만, firebase를 이용할 때는 secure 옵션을 false로 해 주어야 잘 동작한다..... 정확한 이유는 모름


그렇게 했는데도 동작하지 않았다. 별 옵션을 다 바꿔가며 했는데도 되지 않아서,


firebase 공식 문서를 더 확인해 본 결과 이유를 알 수 있었다..


https://firebase.google.com/docs/hosting/functions?hl=ko

즉, session name 옵션을 '__session'으로 설정해야 한다는 것이었다.


이는 connect-session-firebase 모듈에서 'sessions' 옵션으로 설정 가능한데, default로 'sessions'으로 설정된다.




이 옵션을 수정하니까 바로 문제가 해결되었다.


이제 session이 잘 유지된다.


히ㅣ히




반응형