[](https://travis-ci.org/instapk/django-fileprovider)
File handler for django, useful when you want to add control or logic to served files.
It uses `sendfile` API supports on different servers and uses pythonic solution on django development server.
Currently it supports,
* Apache
* Nginx
* LightHttpd
* Caddy
* Hiawatha
# INSTALLATION
use pip to install package:
`pip install django-fileprovider`
* add `fileprovider` to django `INSTALLED_APPS` section.
* add `fileprovider.middleware.FileProviderMiddleware` to `MIDDLEWARE_CLASSES` section
* set django `settings` file with `FILEPROVIDER_NAME` any of available providers `python`, `nginx`, `apache`, `lighthttpd`,
`caddy`, `hiawatha`, `xsendfile`, `xaccel`.
```python
# or you can put FILEPROVIDER_NAME as python in your local settings file
if settings.DEBUG:
FILEPROVIDER_NAME = "python"
else:
# or apache, lighthttpd, caddy
FILEPROVIDER_NAME = "nginx"
```
# USAGE
on django views where file response is required, fill response header `X-File` with absolute file path or use `sendfile` wrapper
for example,
```python
from fileprovider.utils import sendfile
def hello(request):
return sendfile('/absolute/path/to/file')
```
File handler for django, useful when you want to add control or logic to served files.
It uses `sendfile` API supports on different servers and uses pythonic solution on django development server.
Currently it supports,
* Apache
* Nginx
* LightHttpd
* Caddy
* Hiawatha
# INSTALLATION
use pip to install package:
`pip install django-fileprovider`
* add `fileprovider` to django `INSTALLED_APPS` section.
* add `fileprovider.middleware.FileProviderMiddleware` to `MIDDLEWARE_CLASSES` section
* set django `settings` file with `FILEPROVIDER_NAME` any of available providers `python`, `nginx`, `apache`, `lighthttpd`,
`caddy`, `hiawatha`, `xsendfile`, `xaccel`.
```python
# or you can put FILEPROVIDER_NAME as python in your local settings file
if settings.DEBUG:
FILEPROVIDER_NAME = "python"
else:
# or apache, lighthttpd, caddy
FILEPROVIDER_NAME = "nginx"
```
# USAGE
on django views where file response is required, fill response header `X-File` with absolute file path or use `sendfile` wrapper
for example,
```python
from fileprovider.utils import sendfile
def hello(request):
return sendfile('/absolute/path/to/file')
```
Release files for django-fileprovider 0.1.4
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| django-fileprovider-0.1.4.tar.gz | 4.1 kB | Details |
Release files / django-fileprovider-0.1.4.tar.gz
| Download URL | django-fileprovider-0.1.4.tar.gz |
|---|---|
| Size | 4.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
af7e36f38c29c334ac405d53c2f80c5dbdb021dda549c10b80a6e67a99bfb0a3
|
|
BLAKE2b-256 checksum How to use checksums |
d5c1dcbc29e6414283522e51941b6f12b10dc54e64ae1ad81ff3b6e0458f60e8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |