1. Chris Beelby
  2. CherryPy


Joel Rivera  committed 7839564

Bugfix, decode the REQUEST_URI key on the wsgi environment,
the wsgi reference require to have all the values as str,
not bytes.

Closing issue #1171

  • Participants
  • Parent commits f07c06f
  • Branches default

Comments (0)

Files changed (1)

File cherrypy/wsgiserver/wsgiserver3.py

View file
             'REMOTE_ADDR': req.conn.remote_addr or '',
             'REMOTE_PORT': str(req.conn.remote_port or ''),
             'REQUEST_METHOD': req.method.decode('ISO-8859-1'),
-            'REQUEST_URI': req.uri,
+            'REQUEST_URI': req.uri.decode('ISO-8859-1'),
             'SCRIPT_NAME': '',
             'SERVER_NAME': req.server.server_name,
             # Bah. "SERVER_PROTOCOL" is actually the REQUEST protocol.
             'wsgi.url_scheme': req.scheme.decode('ISO-8859-1'),
             'wsgi.version': (1, 0),
         if isinstance(req.server.bind_addr, basestring):
             # AF_UNIX. This isn't really allowed by WSGI, which doesn't
             # address unix domain sockets. But it's better than nothing.