2010-01-20 2 views
4

승객/아파치에서 호스팅되는 간단한 Sinatra 앱에서 세션을 유지하는 데 문제가 있습니다. 세션 [: authorized]의 상태를 쿠키에 저장합니다. Rack :: Handler :: Mongrel에서 호스팅 될 때 로컬로 작동하지만 승객에게 동일한 동작을 할 수없는 것 같습니다.Sinatra 사용 : 승객/아파치에서 세션이 작동하지 않습니다.

내가 여객/아파치 설치 작동하지 않습니다 둘 세션을 가능하게하는 두 가지 방법을 시도했습니다

활성화 : 세션

사용 랙 :: 세션 : 수영장, : 도메인 => 'example.com', : expire_after => 60 * 60 * 24 * 365

수정 방법에 대한 아이디어가 있으십니까?

답변

1

우리는 Apache/Passenger (개발 모드에서)를 사용하지 않았지만 비슷한 것을 직면했습니다. 이 문제를 해결했습니다. -

Sinatra 앱에서 Rack :: Session 명령을 주석 처리하십시오. config.ru 파일에서 수행하십시오. 그리고 안식처 만이 당신의 시네 트라 앱의 세션을 가능하게합니다.

그래야합니다.

1

잘못된 구성 영역에서 세션을 활성화했기 때문에이 문제가 발생했습니다. 내 구성이처럼 보였다 :

configure :development do 
    # ... other settings ... 
end 

enable :sessions 
다음 :development 특정 구성 세션에서 enable :sessions를 이동하여

configure :development do 
    # ... other settings ... 
    enable :sessions 
end 

나를 위해 일하기 시작했다

관련 문제