Webfaction Django 1.4.1: обслуживание статики и мультимедиа с пользовательской сборкой nginx

У меня есть настраиваемая сборка nginx для моего проекта, и все работает нормально, за исключением того, что я запутался в обслуживании статических файлов с использованием того же сервера nginx (ниже вы можете увидеть мой файл конфигурации), недавно пытался установить root=/home/USERNAME/media/app/ и root= /home/USERNAME/.virtualenvs/medialaw; также создал статические только приложения под управлением панели и указал extra_info на мои MEDIA_ROOT и STATIC_ROOT соответственно, но ничего не вышло.

Может ли кто-нибудь помочь мне с этим, может быть, кто-то уже сталкивался с такой проблемой?

server {
    listen   MY_PORT;
    server_name USERNAME.webfactional.com;

    access_log /home/USERNAME/logs/user/nginx/app_access.log;
    error_log  /home/USERNAME/logs/user/nginx/app_error.log;

    root /home/USERNAME/.virtualenvs/medialaw;

   location /m {
        alias /home/USERNAME/media/app/media;

        if ($query_string) {
            expires max;
        }
    }

    location /s {
        alias /home/imanhodjaev/media/app/static;

        if ($query_string) {
            expires max;
         }
    }

    location / {
        proxy_pass_header Server;
        proxy_set_header Host $http_host;
        proxy_redirect off;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Scheme $scheme;
        proxy_connect_timeout 10;
        proxy_read_timeout 10;
        proxy_pass http://localhost:PORT/;
    }

    error_page 500 502 503 504 /media/50x.html;
}

Недавно я разместил этот вопрос на сайте вопросов и ответов веб-фракции http://community.webfaction.com/questions/10535/django-141-serving-static-and-media-with-custom-nginx-build

Спасибо,

Султан


person sultan    schedule 12.09.2012    source источник
comment
вы используете collectstatic?   -  person Reinbach    schedule 12.09.2012
comment
@Reinbach да, я собирал статику, и это сработало хорошо, все статическое содержимое на своих местах   -  person sultan    schedule 12.09.2012
comment
Что вы имеете в виду, говоря, что все провалилось? Что не работает? Что ты видишь? Что вы ожидаете увидеть?   -  person VBart    schedule 13.09.2012
comment
Сайт Django работает нормально. Но для статических файлов у меня ошибка 404 от nginx   -  person sultan    schedule 13.09.2012


Ответы (1)


Проблема решена, вот как выглядит конфигурация на данный момент

Nginx

server {
    listen   MY_PORT;
    server_name USERNAME.webfactional.com;

    access_log /home/USERNAME/logs/user/nginx/app_access.log;
    error_log  /home/USERNAME/logs/user/nginx/app_error.log;

    root /home/USERNAME/media/app;

    location /m {
        alias /home/USERNAME/media/app/media;
    }

    location /s/ {
        alias /home/imanhodjaev/media/app/static;
    }

    location / {
        proxy_pass_header Server;
        proxy_set_header Host $http_host;
        proxy_redirect off;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Scheme $scheme;
        proxy_connect_timeout 10;
        proxy_read_timeout 10;
        proxy_pass http://localhost:PORT/;
    }

    error_page 500 502 503 504 /media/50x.html;
}

Конфигурация веб-фракции из панели управления

Удалил два статических приложения, заполнив обязательные поля и установив extra_info для статических и медиа-местоположений соответственно.

Спасибо,

Султан

person sultan    schedule 13.09.2012