Hello folks,
Can anyone out there offer advice on glitches in my production
environment, as well as explain the relevant settings.py in plain
English for a newbie?

I've been pulling my hair out for weeks trying to get an nginx reverse
proxy to serve static media while apache mod_wsgi serves up dynamic
django content. The dynamic content is being served, and I can access
the index of media files in a browser by visiting the MEDIA_URL.

But for some reason, media does not get served when I access the admin
backend. I get the login screen without any of the stylesheets,
javascript, etc. (and a 500 error when I try to login).

I haven't had any luck despite countless tweaks to MEDIA_ROOT,
MEDIA_URL, and ADMIN_MEDIA_PREFIX  (along with corresponding changes
to nginx and apache config files).

At the bottom of the post are my various config files. I was hoping
someone could point out whatever dumb mistake I'm making.
Additionally, if someone could explain the concepts behind the
settings.py file and how they relate back to the server config files
-- that would be enormously helpful (the django docs and countless
threads I've read on the subject don't connect the dots clearly enough
-- at least for me).

 I'm hoping a basic explanation might let me penetrate the problem
conceptually, so I'm not just futzing around with tweaks with no idea
what's really happening.

Can someone teach a man to fish?



****************settings.py****************
MEDIA_ROOT = '/home/user/public_html/mysite/public/media/'
MEDIA_URL = 'http://media.mysite.org/'
ADMIN_MEDIA_PREFIX = '/media/'


******************/etc/nginx/nginx.conf*************
user www-data;
worker_processes  3;

error_log  /var/log/nginx/error.log;
pid        /var/run/nginx.pid;

events {
    worker_connections  1024;
}

http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;

    access_log  /var/log/nginx/access.log;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  10;
    tcp_nodelay        on;

    gzip  on;

    upstream webcluster {
        server 127.0.0.1:8080;
    }

    include /etc/nginx/sites-enabled/*;

}


*****************/etc/nginx/sites-available/mysite.org*************
server {
        listen 80;
        server_name media.mysite.org;
        access_log /var/log/nginx/mysite.media.access.log;
        location / {
                autoindex on;
                index index.html;
                root /home/user/public_html/mysite/public/media;

        }
}

server {
        listen 80;
        server_name mysite.org www.mysite.org;
        access_log /var/log/nginx/mysite.django.access.log;
        if ($host !~* "^mysite\.org") {
                rewrite ^(.*)$ http://mysite.org$1 permanent;
                break;
        }
        location / {
                proxy_pass http://webcluster;
                include /etc/nginx/proxy.conf;
        }
}


*****************/etc/apache2/sites-available/mysite.org**************
<VirtualHost 127.0.0.1:8080>
        ServerAdmin [EMAIL PROTECTED]
        ServerName www.mysite.org
        ServerAlias mysite.org
        WSGIScriptAlias / /home/user/public_html/mysite/test_app/
mysite.wsgi

        <Directory /home/user/public_html/mysite/test_app>
        Order deny,allow
        Allow from all
        </Directory>

        LogLevel debug
        ErrorLog /var/log/apache2/mysite/error.log
        CustomLog /var/log/apache2/mysite/access.log combined

</VirtualHost>




--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-users@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to