2013-01-14 2 views
0

그래서 장고 1.3에서 1.4로 업그레이드하면 모든 것이 원활하게 진행되었습니다. 그러나 약간의 사용자는 단지 서버가 추락했을 때 nginx에 의해 던져진 Internal Server Error을 얻습니다.1.3에서 1.4로 업그레이드 할 때 django 크래시가 발생하는 쿠키

이 문제를 조사한 결과 쿠키에 문제가 있음을 알 수있었습니다.

ImproperlyConfigured: Error importing authentication backend 
    site.app.backends.EmailModelBackend: "No module named site.app.backends" 

이 때문에 업그레이드하는 동안 나는 내 프로젝트를 개편하고,이 특정 백엔드는 app.backends보다는 site.app.backends에서 지금 : 로그에 오류가 있었다. 분명히이 정보는 인증 쿠키에 하드 코딩되어 문제를 일으키고 있습니다.

사용자에게 이메일을 보내고 쿠키를 지우지 못하게하는 방법이 있습니까?

답변

2

기본값 인 database-backed sessions을 사용하는 경우 이전 백엔드에 대한 참조는 django_session 테이블에 저장되며 사용자의 쿠키는 데이터베이스의 행에 대한 참조 일뿐입니다. 이 경우 데이터베이스에서 모든 세션 데이터를 삭제하여 오류를 방지 할 수 있습니다.

이렇게하기 전에 신중하게 생각하십시오. 모든 세션 데이터를 삭제하지 않을 수도 있습니다. 예를 들어, 모든 사용자를 로그 아웃합니다.

+0

모든 사용자를 로그 아웃해도 세계가 끝나지는 않을 것입니다. 팁 고마워. – fredley

0

쿠키를 비난 할 수 있다고 생각하지 않습니다. 코드가있는 빗으로 코드를 다시 살펴보고 site.app.backends으로 전화하십시오.

충돌로부터 콜 스택에 액세스 할 수있는 경우 정확히 볼 위치를 알려줍니다.

+0

아무 것도 없습니다, 두 번 확인했습니다. 이것은 이전에 사이트에 로그인 한 브라우저에만 영향을 미치고 쿠키를 지우면 해결됩니다. – fredley

+0

정말 여기 저기 확인 했습니까? 리디렉션? URL? 모델? 맞춤형 미들웨어? –

+0

'grep -r site.app.backends .'. 결과가 없습니다. 어쨌든'settings.py'에 언급 된 유일한 장소입니다. – fredley

관련 문제