Skip to main content
This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (pypi.python.org).
Help us improve Python packaging - Donate today!

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/ {
        internal;
        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)

Release History

Release History

This version
History Node

0.0.2

History Node

0.0.1

Download Files

Download Files

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

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
django-x_file_accel_redirects-0.0.2.linux-x86_64.tar.gz (9.1 kB) Copy SHA256 Checksum SHA256 any Dumb Binary Apr 2, 2014
django-x_file_accel_redirects-0.0.2.tar.gz (5.0 kB) Copy SHA256 Checksum SHA256 Source Apr 2, 2014

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting