/django-revproxy

Reverse Proxy view that supports all HTTP methods, Diazo transformations and Single Sign-On.

Primary LanguagePythonMozilla Public License 2.0MPL-2.0

Welcome to django-revproxy

Maintainability Downloads Jazzband

A simple reverse proxy using Django. It allows to use Django as a reverse Proxy to HTTP requests. It also allows to use Django as an authentication Proxy.

Documentation available at http://django-revproxy.readthedocs.org/

Features

  • Proxies all HTTP methods: HEAD, GET, POST, PUT, DELETE, OPTIONS, TRACE, CONNECT and PATCH
  • Copy all http headers sent from the client to the proxied server
  • Copy all http headers sent from the proxied server to the client (except hop-by-hop)
  • Basic URL rewrite
  • Sets the http header REQUEST_USER if the user is logged in Django
  • Sets the http headers X-Forwarded-For and X-Forwarded-Proto
  • Handles redirects
  • Few external dependencies
  • Apply XSLT transformation in the response (requires Diazo)

Dependencies

  • django >= 1.8
  • urllib3 >= 1.12
  • diazo >= 1.0.5 (optional)
  • lxml >= 3.4, < 3.5 (optional, but diazo dependency)

Install

pip install django-revproxy