ajenti panel fails to load
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Ajenti |
New
|
Undecided
|
Unassigned |
Bug Description
The login screen loads successfully and lets me input the default username and password,
but the panel refuses to load apart from the header bar, the "Feedback and help" left bar and the small light bulb (none of them being clickable). See attached screenshot of the panel.
When looking at the log files or running `ajenti-panel -v`, I see the following exception:
03.10.2015 11:24 compat.py:20 DEBUG [root] Popen: ./compile_
Traceback (most recent call last):
File "/usr/local/
result = self._run(
File "/usr/local/
return handle(*args)
File "/usr/local/
return self.handle(
File "/usr/lib/
handler.
File "/usr/local/
result = self.handle_
File "/usr/local/
self.
File "/usr/lib/
return SocketIOHandler
File "/usr/lib/
return self._do_
File "/usr/lib/
self.
File "/usr/lib/
self.
File "/usr/lib/
("Content-
File "/usr/local/
raise UnicodeError("The value must be a native string", header, value)
UnicodeError: ('The value must be a native string', 'Access-
<Greenlet at 0x7faa946f9f50: _close_
Apparently, another project has the same exception thrown by gevent, as described here: https:/
This may be linked to gevent new changes (http://
> gevent.
>
> Under gevent 1.0, non-bytes headers (that is, unicode since gevent 1.0 only ran on Python 2) were encoded according to the current default Python encoding. In some cases, this could allow non-Latin-1 characters to be sent in the headers, but this violated the HTTP specification, and their interpretation by the recipient is unknown. Now, a UnicodeError will be raised.
After more investigation on the affected system,
I was able to pinpoint the issue to socketio's transports.py and handler.py,
which both contained the following line:
changing it to
successfully restored ajenti panel's functionality.
Do you think this should be reported to socketio/gevent maintainers?