id summary reporter owner description type status priority milestone component version resolution keywords cc 3260 web ui reverse proxy crash ajslater "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/server.py:190 in process 189 try: 190 resrc = self.site.getResourceFor(self) 191 if resource._IEncodingResource.providedBy(resrc): /usr/lib/python3/dist-packages/twisted/web/server.py:826 in getResourceFor 825 request.sitepath = copy.copy(request.prepath) 826 return resource.getChildForRequest(self.resource, request) 827 /usr/lib/python3/dist-packages/twisted/web/resource.py:98 in getChildForRequest 97 request.prepath.append(pathElement) 98 resource = resource.getChildWithDefault(pathElement, request) 99 return resource /usr/lib/python3/dist-packages/deluge/ui/web/server.py:580 in getChildWithDefault 579 if base[0] != '/': 580 base = '/' + base 581 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: https://github.com/deluge-torrent/deluge/blob/develop/deluge/ui/web/server.py#L572 its returning bytes and not str. Bytes are what's what's specified in the twisted docs: https://twistedmatrix.com/documents/current/api/twisted.web.http.Request.html#getHeader 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." bug closed minor 2.0.3 Web UI 2.0.0 Fixed reverse proxy