Opened 5 years ago

Closed 5 years ago

#3260 closed bug (Fixed)

web ui reverse proxy crash

Reported by: ajslater Owned by:
Priority: minor Milestone: 2.0.3
Component: Web UI Version: 2.0.0
Keywords: reverse proxy Cc:


if you access deluge web UI with a reverse proxy header it crashes

web.Server Traceback (most recent call last):
builtins.TypeError: must be str, not bytes
/usr/lib/python3/dist-packages/twisted/web/ in process
189        try:
190            resrc =
191            if resource._IEncodingResource.providedBy(resrc):
/usr/lib/python3/dist-packages/twisted/web/ in getResourceFor
825        request.sitepath = copy.copy(request.prepath)
826        return resource.getChildForRequest(self.resource, request)
/usr/lib/python3/dist-packages/twisted/web/ in getChildForRequest
97        request.prepath.append(pathElement)
98        resource = resource.getChildWithDefault(pathElement, request)
99    return resource
/usr/lib/python3/dist-packages/deluge/ui/web/ in getChildWithDefault
579        if base[0] != '/':
580            base = '/' + base
builtins.TypeError: must be str, not bytes

the base variable type is bytes from the header and not a string which blows up.

When you retrieve the header contents here:

its returning bytes and not str. Bytes are what's what's specified in the twisted docs:

so it might be fixable with casting those bytes to a string or concatenating them another way.

This bug is new as of 2.x.x which makes sense since it looks like webui was refactored some.

Change History (3)

comment:1 Changed 5 years ago by Cas

  • Milestone changed from needs verified to 2.0.3

comment:2 Changed 5 years ago by Cas

Thanks for detailed report! Will fix this shortly

comment:3 Changed 5 years ago by Cas

  • Resolution set to Fixed
  • Status changed from new to closed

Fixed in develop [4dd1f63b8]

Note: See TracTickets for help on using tickets.