2012-04-03 125 views
1

我有一些我想要提供的静态文件,我知道Django和Python不适合在生产环境中提供静态文件。使用nginx提供带有动态URL的静态文件

我目前的设置是nginx,其后面是python/django,它通过nginx_fastcgi或uwsgi工作者枯萎。 Nginx提供了像CSS和Javascript这样的静态文件,所有的动态页面都被传递给python来生成。

但是,有像/user/input/battleships.in的网址。这里battleships.in是位于`$ MEDIA_ROOT/users/$ request.user.username的文件系统上的一个静态文件。有没有办法让Django确定正确的url,然后将请求代理回nginx来提供静态文件?

+0

检查http://stackoverflow.com/questions/1609273/how-to-make-a-private-download-area-with- django和http://stackoverflow.com/questions/7296642/django-understanding-x-sendfile – okm 2012-04-03 09:26:49

+0

在这两个链接之间,我能够弄清楚该怎么做。你会简单地说一下使用X-Accel-Redirect来回答这个问题吗? – 2012-04-03 09:58:10

+0

很高兴它有帮助。如果它在代码中有帮助,可能还会发布并选择最终的解决方案,可能是一些名为'django-downloadble' = p – okm 2012-04-03 10:20:06

回答