Django的nginxpipe理媒体

我目前正在testing从Apache mod_wsgiNginx and FastCGI

我准备了整个安装,并且正在运行Django 1.1.2CentOS 5.4 box进行testing

在我的旧的Apache configuration我有别名/media/设置,还有一个名为/mediaadmin/

下面显示的是

 Alias /media/ "/www/django_test1/omu2/media/" <Directory "/www/django_test1/omu2/media"> Alias /mediaadmin/ "/opt/python2.6/lib/python2.6/site-packages/django/contrib/admin/media/" <Directory "/opt/python2.6/lib/python2.6/site-packages/django/contrib/admin/media"> 

如何获得相同types的Nginxconfiguration设置,目前这里是我所拥有的一个片段,即使在重新启动Nginx后,我仍然没有看到我的pipe理员端用正确的CSS,图像等parsing。

 server { location /media/ { root /www/django_test1/omu2; } location /mediaadmin/ { root /opt/python2.6/lib/python2.6/site-packages/django/contrib/admin; } } 

我的settings.py

 BASE_PATH = os.path.dirname(os.path.abspath(__file__)) BASE_URL = '127.0.0.1' MEDIA_ROOT = "%s/media/" % BASE_PATH MEDIA_URL = "%s/media/" % BASE_URL ADMIN_MEDIA_PREFIX = "%s/mediaadmin/" % BASE_URL 

尝试以下配置:

 location /mediaadmin/ { alias /opt/python2.6/lib/python2.6/site-packages/django/contrib/admin/media/; expires max; add_header Cache-Control public; } 

我改变了/django/contrib/admin/media/路径,因为我猜我们的管理媒体文件正常在这个文件夹中。

提示:你的MEDIA_ROOTADMIN_MEDIA_PREFIX应该是绝对的 。

我也发现下面这行引起了很多混乱

 location ~* ^.+\.(jpg|jpeg|gif|png|ico|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt|tar|mid|midi|wav|bmp|rtf|js|mov) { access_log off; expires 30d; } 

我评论了这一点,并改变/ mediaadmin /从根到别名。