﻿id	summary	reporter	owner	description	type	status	component	version	severity	resolution	keywords	cc	stage	has_patch	needs_docs	needs_tests	needs_better_patch	easy	ui_ux
25623	Django always returns a white page along with 400 on latin encoded URLs.	Christian Peters	nobody	"Given a URL like /Raumh%F6he served with gunicorn and waitress (maybe others as well), django raises a UnicodeDecodeError here:

https://github.com/django/django/blob/master/django/core/handlers/wsgi.py#L200

... which ends up in serving a white page with a 400 (sample: https://www.djangoproject.com/Raumh%F6he)

This does not happen with the built in runserver command, because it double encodes the query, as far as I understand:

https://github.com/django/django/blob/master/django/core/servers/basehttp.py#L154-L157

Gunicorn on the other hand is explicitly casting to latin:

https://github.com/benoitc/gunicorn/blob/master/gunicorn/_compat.py#L82

... which leads to the error as django is explicitly expecting utf-8.
"	Bug	new	Core (URLs)	1.8	Normal				Unreviewed	0	0	0	0	0	0
