nginx + web. py + fastcgi (spawn - fcgi) 의 session 실효 문제

1005 단어 web.pywebpy
웹. py 는 diskStore 로 session 파일 을 저장 합 니 다. 홈 페이지 의 예 를 참고 하여 python code. py 가 직접 실행 되 는 데 문제 가 없 지만 nginx 와 결합 하면 안 됩 니 다. 구체 적 인 표현 은 브 라 우 저가 요청 을 할 때마다 session 파일 을 생 성 합 니 다.이것 또한 session 에 데 이 터 를 저장 하 는 데 실 효 를 초래 했다.
이 문 제 는 이틀 동안 나 를 괴 롭 혔 고 구 글 에서 도 관련 견 해 를 찾기 어 려 웠 다.마지막 https://github.com/webpy/webpy/issues/132
영감 을 찾 았 습 니 다. 쿠키 path 의 문 제 였 군요!
해결 방법: 
수정 / usr / local / lib / python 2.7 / site - packages / web / session. py 의 148 줄 (web. py 0.37 버 전)
web.setcookie(cookie_name, session_id, expires=expires, domain=cookie_domain, httponly=httponly, secure=secure    , path=cookie_path)

path=cookie_path 를 path = '/' 로 변경
문제 해결!
나중에 분석 한 것 은 웹. py 의 bug 일 것 입 니 다. 예 를 들 어 방문 등 입 니 다.http://127.0.0.1/hello 웹. py 는 sessionid 의 쿠키 를
path 는 "/ hello" 로 설정 되 어 있 습 니 다. 물론 저 는 너무 폭력 적 입 니 다. "루트 디 렉 터 리 만 사용 합 니 다" 의 응용 에 만 효과 가 있 습 니 다.
다 중 디 렉 터 리 URL 을 사용 하거나 복잡 한 session 디자인 이 있다 면 그대로 옮 길 수 없습니다.

좋은 웹페이지 즐겨찾기