#26037: HttpRequest.get_host() uses either HTTP_X_FORWARDED_HOST or
HTTP_X_FORWARDED_PORT => should use both
-------------------------------+--------------------------------------
Reporter: benoitbryon | Owner: nobody
Type: Bug | Status: new
Component: Uncategorized | Version: 1.9
Severity: Normal | Resolution:
Keywords: | Triage Stage: Unreviewed
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------+--------------------------------------
Comment (by benoitbryon):
In the case `X_FORWARDED_PORT` is considered a edge-case and not a
standard (see discussion at https://code.djangoproject.com/ticket/19517),
an alternative to resolve the use case would be mentioning both domain and
port in X_FORWARDED_HOST header, i.e. don't use X_FORWARDED_PORT at all.
Example:
* Django settings declare `USE_X_FORWARDED_HOST = True`
* Reverse proxy sets header `X_FORWARDED_HOST = "example.com:8080"`
* `request.get_host()` returns `example.com:8080`
If this approach is preferred, it would be nice to mention it in the
documentation, so that users know when to use
settings.USE_X_FORWARDED_HOST and settings.USE_X_FORWARDED_PORT. At the
moment, it is not obvious that we cannot use HOST and PORT at the same
time.
--
Ticket URL: <https://code.djangoproject.com/ticket/26037#comment:2>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.
--
You received this message because you are subscribed to the Google Groups
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/django-updates/069.8265fc9df8f63e7b73436a451ad9464a%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.