Metadata-Version: 1.1
Name: django-httpxforwardedfor
Version: 0.3.0
Summary: Set request.META['REMOTE_ADDR'] from request.META['HTTP_X_FORWARDED_FOR']
Home-page: https://github.com/PaesslerAG/django-httpxforwardedfor
Author: Paessler AG
Author-email: bis@paessler.com
License: BSD
Description: =============================
        django-httpxforwardedfor
        =============================
        
        .. image:: https://travis-ci.org/PaesslerAG/django-httpxforwardedfor.svg?branch=master
                :target: https://travis-ci.org/PaesslerAG/django-httpxforwardedfor
        
        ----
        
        .. contents:: Set request.META['REMOTE_ADDR'] from request.META['HTTP_X_FORWARDED_FOR']
        
        ----
        
        Quickstart
        ----------
        
        Install django-httpxforwardedfor::
        
            pip install django-httpxforwardedfor
        
        Configure it in the settings of your django project::
        
            # Make sure it is at the beginning of the list of middle-ware classes.
            # Only other middle-ware classes working on the remote address should
            # precede it.
            MIDDLEWARE = [
                'httpxforwardedfor.middleware.HttpXForwardedForMiddleware',
            ] + MIDDLEWARE
        
            # Only allow HTTP_X_FORWARDED_FOR, if the request is marked as secure.
            SECURE_PROXY_SSL_HEADER = ('HTTP_X_FORWARDED_PROTO', 'https')
        
            # To only allow change of the REMOTE_ADDR for requests via HTTPS.
            # The default is to allow all requests.
            TRUST_ONLY_HTTPS_PROXY = True
        
        
        Release Notes
        -------------
        
        * 0.3.0 - update supported versions according to
          https://www.djangoproject.com/download/#supported-versions and
          https://devguide.python.org/#status-of-python-branches
        
          * dropping support for Django 1.10 and Python 3.2 and 3.3
          * adding support for Python 3.7
          * adding support for Django 2.0
          * adding support for Django 2.1
        
        * 0.2.0 - futureproof release
        
          * adapt to new middleware format of django 1.10+
          * drop support for python 3.3, django < 1.10
        
        * 0.1.2 - initial release
        
          * supports Django 1.8, 1.9, 1.10, 1.11 on python 2.7, 3.3, 3.4, 3.5, and 3.6 - as per the
            `official django docs <https://docs.djangoproject.com/en/dev/faq/install/#what-python-version-can-i-use-with-django>`_
          * configuration to activate forwarding of header only for safe requests and trusting only https requests in general.
        
        
        .. contributing start
        
        Contributing
        ------------
        
        As an open source project, we welcome contributions.
        
        The code lives on `github <https://github.com/PaesslerAG/django-httpxforwardedfor>`_.
        
        Reporting issues/improvements
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        
        Please open an `issue on github <https://github.com/PaesslerAG/django-httpxforwardedfor/issues/>`_
        or provide a `pull request <https://github.com/PaesslerAG/django-httpxforwardedfor/pulls/>`_
        whether for code or for the documentation.
        
        For non-trivial changes, we kindly ask you to open an issue, as it might be rejected.
        However, if the diff of a pull request better illustrates the point, feel free to make
        it a pull request anyway.
        
        Pull Requests
        ~~~~~~~~~~~~~
        
        * for code changes
        
          * it must have tests covering the change. You might be asked to cover missing scenarios
          * the latest ``flake8`` will be run and shouldn't produce any warning
          * if the change is significant enough, documentation has to be provided
        
        Setting up all Python versions
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        
        ::
        
            sudo apt-get -y install software-properties-common
            sudo add-apt-repository ppa:fkrull/deadsnakes
            sudo apt-get update
            for version in 3.4 3.5 3.6 3.7; do
              py=python$version
              sudo apt-get -y install ${py} ${py}-dev
            done
        
        Code of Conduct
        ~~~~~~~~~~~~~~~
        
        As it is a Django extension, it follows
        `Django's own Code of Conduct <https://www.djangoproject.com/conduct/>`_.
        As there is no mailing list yet, please just email one of the main authors
        (see ``setup.py`` file or `github contributors`_)
        
        
        .. contributing end
        
        
        .. _github contributors: https://github.com/PaesslerAG/django-httpxforwardedfor/graphs/contributors
        
Keywords: django-httpxforwardedfor
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: BSD License
Classifier: Natural Language :: English
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Framework :: Django
Classifier: Framework :: Django :: 1.11
Classifier: Framework :: Django :: 2.0
Classifier: Framework :: Django :: 2.1
