Skip to main content

Django app to easy configuration of multiple X-File-Accel locations

Project description

This app allowes you to protect static files served by nginx with authorization of your django project

Protecting files

This example will show how to protect 2 file positions from downloading:

  • {static_url}/files/fbi
  • {static_url}/files/cia

In this example we will assume that static url is /static/

Steps to protect files:

  1. in nginx config disable access to desired locations:

    location /static/files/fbi {
        deny all;
    location /static/files/cia {
        deny all;
  2. Add internal path to serve this files. We will add “root” directory to serve both locations with one configuration option:

    # needed for x-file-accell
    location /internal/files/ {
        alias $project_base/static/files/;
  3. Configure x_file_accel_redirects app:

    1. Set settings.X_FILE_ACCEL = True.

    2. add "x_file_accel_redirects" to settings.INSTALLED_APPS.

    3. Add app to your root url config, e.g.:

      urlpatterns += patterns('',
          (r'^protected/', include('x_file_accel_redirects.urls')),
    4. In django admin create new instance of x_file_accel_redirects.AccelRedirect with next values:

      • Description: anything meaningful.
      • URL prefix: any latin letters without slashes, e.g. “downloads”.
      • Login required: True.
      • Internal path: “/internal/files/”” (as specified in nginx config).
      • serve document root: optionaly you can specify path to directory with needed files to serve them with django staticfiles app when settings.X_FILE_ACCEL == False.

When everything is configured and restarted you will be able to get file $project_base/static/files/fbi/secrets/ufo.txt by next url:

/protected/downloads/fbi/secrets/ufo.txt (/downloads/ if from “prefix” field of AccelRedirect)

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for django-x_file_accel_redirects, version 0.0.2
Filename, size File type Python version Upload date Hashes
Filename, size django-x_file_accel_redirects-0.0.2.linux-x86_64.tar.gz (9.1 kB) File type Dumb Binary Python version any Upload date Hashes View
Filename, size django-x_file_accel_redirects-0.0.2.tar.gz (5.0 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page