Задать вопрос

Django + fastcgi + nginx как заставить работать?

Настраивал так:

Файл nginx.conf
user http;
worker_processes 1;

events {
    worker_connections 1024;
}

http {
    include mime.types;
    default_type application/octet-stream;
    sendfile on;
    keepalive_timeout 65;

    server {
        listen 80;
        server_name localhost;
        charset utf-8;
        access_log logs/cool.access.log;
        client_max_body_size 300m;

        location / {
            # эти параметры мы укажем потом и при запуске Django-fastcgi
            fastcgi_pass 127.0.0.1:8881;
            include fastcgi_params;
        }

        # статическое содержимое проекта
        location /static/ {
            alias /home/soulless/src/django/mysite/static/;
            expires 30d;
        }
        # статическое содержимое админки
        location /media/ {
            alias /usr/lib/python2.6/site-packages/django/contrib/admin/media/;
            expires 30d;
        }
    }
}


Файл fastcgi.conf
fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;
fastcgi_param  QUERY_STRING        $query_string;
fastcgi_param  REQUEST_METHOD   $request_method;
fastcgi_param  CONTENT_TYPE       $content_type;
fastcgi_param  CONTENT_LENGTH    $content_length;

fastcgi_param  SCRIPT_NAME          $fastcgi_script_name;
fastcgi_param  REQUEST_URI          $request_uri;
fastcgi_param  DOCUMENT_URI       $document_uri;
fastcgi_param  DOCUMENT_ROOT      $document_root;
fastcgi_param  SERVER_PROTOCOL    $server_protocol;

fastcgi_param  GATEWAY_INTERFACE  CGI/1.1;
fastcgi_param  SERVER_SOFTWARE    nginx/$nginx_version;

fastcgi_param  REMOTE_ADDR        $remote_addr;
fastcgi_param  REMOTE_PORT        $remote_port;
fastcgi_param  SERVER_ADDR        $server_addr;
fastcgi_param  SERVER_PORT        $server_port;
fastcgi_param  SERVER_NAME        $server_name;


./manage.py runfcgi method=prefork host=127.0.0.1 port=8881 pidfile=/tmp/server.pid maxchildren=10

Хорошо отображает индексную страницу, со всеми картинками из media. Но не одна ссылка, обрабатываемая джанго, не работает. Т.е. ни одна страница из urls не открывается - просто ничего не происходит, остаётся висеть индексная страница а в адресной строке меняется путь.
  • Вопрос задан
  • 3039 просмотров
Подписаться 5 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 2
@bromzh
Drugs-driven development
Зачем fastcgi? Это же не пхп, возьми нормальный питоновский веб-сервер. Вот, например, с подробной инструкцией.

UPD. Вот бенчмарки.
Ответ написан
Комментировать
vvpoloskin
@vvpoloskin
Инженер связи
Я вот смотрю официальную доку и вижу, что нет PATH_INFO
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы