Форум сайта python.su
Сделал себе домашний сервер для разработок, на нем пытаюсь поднять тестовый проект на nginx:
server {запускаю джангу так:
listen 80;
server_name fastcgi.testsite;
access_log /home/django/testsite/logs/nginx_access.log;
error_log /home/django/testsite/logs/nginx_error.log;
location / {
fastcgi_pass unix:/home/django/testsite/logs/django-server.sock;
include fastcgi_params;
fastcgi_param PATH_INFO $fastcgi_script_name;
fastcgi_pass_header Authorization;
fastcgi_intercept_errors off;
}
location /media/ {
alias /home/django/testsite/media/;
expires 30d;
}
location /media_admin/ {
alias /usr/lib/python2.6/site-packages/django/contrib/admin/media/;
expires 30d;
}
}
sudo -u dw python /home/django/testsite/manage.py \и все, что я вижу в браузере - радостная страница “вы создали свой первый джанго-проект”. Тупо не видится settings.py. В чем проблема?
runfcgi method=prefork \
maxchildren=10 maxspare=5 minspare=2 maxrequests=100 \
socket=/home/django/testsite/logs/django-server.sock \
pidfile=/home/django/testsite/logs/django-server.pid \
umask=007
Офлайн
Если бы он не видился, то вы бы получили ошибку на этапе запуска fastcgi гейта
Офлайн
Daevaorn
я пишу в него заведомо нерабочий код, а страница в браузере остается прежней, никаких ошибок
Отредактировано (Июль 1, 2010 19:56:05)
Офлайн
Вы гейт перезапускаете?
Офлайн
Daevaorn
и джангу перезапускал, и сам nginx
Офлайн
Так, вроде подхватил, но теперь другая проблема. Я заменил ADMIN_PREFIX на “/media_admin/”, а в nginx прописано:
location /media_admin/ {media отдается нормально, но при попытке перейти на /admin/ -
alias /usr/lib/python2.6/site-packages/django/contrib/admin/media/;
expires 30d;
}
Unhandled Exceptionв логах трейс почему-то обрывается на ровном месте:
An unhandled exception was thrown by the application.
2010/07/02 02:33:17 4147#0: *7 FastCGI sent in stderr: “” while reading response header from upstream, client: 192.168.0.3, server: fastcgi.testsite, request: “GET /admin/ HTTP/1.1”, upstream: “fastcgi://unix:/home/django-projects/testsite/logs/django-server.sock:”, host: “192.168.0.1”и вообще, какого черта wsgi? Я же его на fastcgi запускаю?
2010/07/02 02:33:17 4147#0: *7 FastCGI sent in stderr: “Traceback (most recent call last):
File ”/usr/lib/pymodules/python2.6/flup/server/fcgi_base.py“, line 558, in run
protocolStatus, appStatus = self.server.handler(self)
File ”/usr/lib/pymodules/python2.6/flup/server/fcgi_base.py“, line 1118, in handler
result = self.application(environ, start_response)
File ”/usr/local/lib/python2.6/dist-packages/django/core/handlers/wsgi.py“, line 245, in __call__
response = middleware_method(request, response)
File ”/usr/local/lib/python2.6/dist-packages/django/contrib/sessions/middleware.py“, line 36, in process_response
request.session.save()
File ”/usr/local/lib/python2.6/dist-packages/django/contrib/sessions/backends/db.py“, line 56, in save
session_key = self.session_key,
File ”/usr/local/lib/python2.6/dist-packages/django/contrib/sessions/backends/base.py“, line 152, in _get_session_key
self._session_key = self._get_new_session_key()
File ”/usr/local/lib/python2.6/dist-packages/django/contrib/sessions/backends/base.py“, line 144, in _get_new_session_key
if not self.exists(session_key):
File ”/usr/local/lib/python2.6/dist-packages/django/contrib/sessions/backends/db.py“, line 29, in exists
Session.objects.get(session_key=session_key)
File ”/usr/local/lib/python2.6/dist-packages/django/db/models/manager.py“, line 132, in get
return self.get_query_set().get(*args, **kwargs)
File ”/usr/local/lib/python2.6/dist-packages/django/db/models/query.py“, line 336, in get
num = len(clone)
File ”/usr/local/lib/python2.6/dist-packages/django/db/models/query.py“, line 81, in __len__
self._result_cache = list(self.iterator())
File ”/usr/local/lib/python2.6/dist-packages/django/db/models/query.py“, line 269, in iterator
for row in compiler.results_iter():
File ”/usr/local/lib/python2.6/dist-packages/django/db/models/sql/compiler.py“, line 672, in results_iter
for rows in self.execute_sql(MULTI):
File ”/usr/local/lib/python2.6/dist-packages/django/d
Отредактировано (Июль 2, 2010 09:22:22)
Офлайн
Не-а, косяк явно где-то на вашей стороне:
1. fastcgi_param - не умолчальный?
2. перепроверьте конфиг - смените сокеты на IP, может так заработает.
3. manage.py лучше тянуть скриптом на баше - меньше шансов ошибиться.
Хотя, сдается, вы в табличке где-то ошиблись
Отредактировано (Июль 2, 2010 15:04:51)
Офлайн