[Unmaintained] A Django app that provides helpers for serving static files, used in Django and Pinax.
This is a Django app that provides helpers for serving static files.
For small projects, this isn't a big deal, because you can just keep the media somewhere your web server can find it. However, in bigger projects -- especially those comprised of multiple apps -- dealing with the multiple sets of static files provided by each application starts to get tricky.
Collecting static files from each of your Django apps (and any other place you specify) into a single location that can easily be served in production.
The main website for django-staticfiles is
github.com/jezdez/django-staticfiles_ where you can also file tickets.
.. note:: django-staticfiles is now part of Django (since 1.3) as
The django-staticfiles 0.3.X series will only receive security and data loss bug fixes after the release of django-staticfiles 1.0. Any Django 1.2.X project using django-staticfiles 0.3.X and lower should be upgraded to use either Django >= 1.3's staticfiles app or django-staticfiles >= 1.0 to profit from the new features and stability.
You may want to chose to use django-staticfiles instead of Django's own staticfiles app since any new feature (additionally to those backported from Django) will be released first in django-staticfiles.
Use your favorite Python packaging tool to install
pip install django-staticfiles
You can also install the
in-development version_ of django-staticfiles with
pip install django-staticfiles==dev.
INSTALLED_APPS = [ # ... "staticfiles", ]
STATIC_URLsetting to the URL that handles serving static files::
STATIC_URL = "/static/"
In development mode (when
DEBUG = True) the
runservercommand will automatically serve static files::
python manage.py runserver
Once you are ready to deploy all static files of your site in a central directory (
STATIC_ROOT) to be served by a real webserver (e.g. Apache, Cherokee, Lighttpd, Nginx etc.), use the
python manage.py collectstatic
See the webserver's documentation for descriptions how to setup serving the deployment directory (
(optional) In case you use Django's admin app, make sure the
ADMIN_MEDIA_PREFIXsetting is set correctly to a subpath of
ADMINMEDIAPREFIX = STATIC_URL + "admin/"
.. _github.com/jezdez/django-staticfiles: http://github.com/jezdez/django-staticfiles .. _in-development version: http://github.com/jezdez/django-staticfiles/tarball/develop#egg=django-staticfiles-dev .. _PyPI: http://pypi.python.org/pypi/django-staticfiles .. _Apache: http://httpd.apache.org/ .. _Lighttpd: http://www.lighttpd.net/ .. _Nginx: http://wiki.nginx.org/ .. _Cherokee: http://www.cherokee-project.com/