在进行了一些谷歌搜索之后,我发现这些项目有助于提供静态文件:django-static Nginx和django-staticfiles。
是否有任何人对这些方法有过经验,或者最好是两种方法,并且可以推荐其中一种或第三种?
答案 0 :(得分:2)
处理静态文件的常用方法实际上并不是通过django发送它们,而是让Web服务器(例如apache或ngingx)处理它们。我提供了一个mod_wsgi的小例子,基于官方的django文档,找到了here。
Alias /media/ /usr/local/wsgi/static/media/
<Directory /usr/local/wsgi/static>
Order deny,allow
Allow from all
</Directory>
WSGIScriptAlias / /usr/local/wsgi/scripts/django.wsgi
<Directory /usr/local/wsgi/scripts>
Order allow,deny
Allow from all
</Directory>
第一个语句确保/ media中的所有文件都将直接通过apache提供,而不是django。第二个声明是用于设置django站点本身。现在,使用此媒体文件不会通过django处理,这通常很慢。
静态文件服务器存在的原因主要是用于开发或非常简约的部署。