[django] на _"_ продакшн _"_ сервере не работают сессии (или кукисы)
Validating models...
0 errors found
Django version 1.2.4, using settings 'reklama.settings'
Development server is running at http://127.0.0.1:7000/
Quit the server with CTRL-BREAK.
[04/Feb/2011 20:18:53] "GET / HTTP/1.1" 200 6758
Traceback (most recent call last):
File "C:\Python27\lib\site-packages\django\core\servers\basehttp.py", line 280, in run
self.result = application(self.environ, self.start_response)
File "C:\Python27\lib\site-packages\django\core\servers\basehttp.py", line 674, in __call__
return self.application(environ, start_response)
File "C:\Python27\lib\site-packages\django\core\handlers\wsgi.py", line 241, in __call__
response = self.get_response(request)
File "C:\Python27\lib\site-packages\django\core\handlers\base.py", line 130, in get_response
return self.handle_uncaught_exception(request, resolver, sys.exc_info
File "C:\Python27\lib\site-packages\django\core\handlers\base.py", line 180, in handle_uncaught_exception
return callback(request, **param_dict)
File "C:\Python27\lib\site-packages\django\utils\decorators.py", line 76, in _wrapped_view
response = view_func(request, *args, **kwargs)
File "C:\Python27\lib\site-packages\django\views\defaults.py", line 30, in server_error
t = loader.get_template(template_name) # You need to create a 500.html template.
File "C:\Python27\lib\site-packages\django\template\loader.py", line 157, in get_template
template, origin = find_template(template_name)
File "C:\Python27\lib\site-packages\django\template\loader.py", line 138, in find_template
raise TemplateDoesNotExist(name)
TemplateDoesNotExist: 500.html
Это как то может быть связано ?
Но вообще сайты под 0.96 обычно не работают на новых джанго версиях. Странно, что он не вывалился по ошибке импорта
500 ошибка у него, а у тебя не настроенный джанго
sessionid и csrftoken. Вроде больше и ненадо никаких. т.е. на клиенте вроде всё ок.
А те 0.96 - я их вроде рихтовал немного (вроде в моделях изменения, и в способе попадания их в джанго админку).
а у тебя не настроенный джангоа поподробнее ?
csrfлучше отключить на время дебага. вообще все лишнее лучше отрубить
а поподробнее ?500 шаблона джанго не видит
500 джанго кидает на ошибку во вьюхе - вешай try-except и лови
значит смотрим что плохо в ветке, когда debug=False
главное отличае в том, что джанга не берет свои темплейты для вывода ошибок (404 500 и пр а хочет ваши, а они есть?
TemplateDoesNotExist: 500.htmlну так и есть, джанга в дебаге ищет кастомный 500.html, а его как видимо нет
вот она и ругается
Вообще совет на правах оффтопа: т.к. джанга развивается и весьма активно, саму джангу ставить в систему не рекомендуется, а хранить джангу, как библиотеку внутри проекта именно той версии, под которую написан проект.
Это позволит выборочно мигрировать проекты на новые версии и удобнее поддерживать старые. (хотя наверно вы все это знаете)
Это позволит выборочно мигрировать проекты на новые версии и удобнее поддерживать старые. (хотя наверно вы все это знаете)Не, не знаю. Но благодаря вашей наводке скоро, наверное, буду знать
Оставить комментарий
Alena_08_11
В общем столкнулся с хренью :Есть продакшн ( в кавычках ) сервер. freebsd jail с nginx + uwsgi. python 2.7 django 1.2. В нём крутится несколько django сайтов (Написанных ещё на django 0.96 вроде, используют mysql). Они работают нормально.
Попытался ща запустить текущий django-проект в этих условиях (писался в PyCharm под виндой, python 2.7 django 1.2 использует sqlite3). В общем если в settings.py стоит Debug = True - то всё работает шоколадно. Как только ставлю Debug=False - перестаёт работать механизм сессий, встроенная django-админка не логинит, говоря типа "ваш браузер не хавает кукисы").
В чём может быть проблема ? С чего начать диагностику ? В инете погуглил - ничего путного ненагуглил.
в логах nginx ничё по теме нет. в логах uwsgi вроде тоже.