Tasmoadmin: 1.5.x not usable in chrome / behind reverse proxy (docker)

Created on 13 Jul 2018  路  19Comments  路  Source: reloxx13/TasmoAdmin

Something in the latest version seems to be broken.

With Chrome I get an ERR_RESPONSE_HEADERS_TOO_BIG error opening via port mapping.
Nginx as reverse proxy dies with a 502.

Edge seems to work fine over direct port.

My guess is theConfig is now saved in a cookie change that causes this.
1.4.0 works flawlessly in chrome and behind reverse proxy, so I would eliminate my setup as cause. (Just switching image tag in docker-compose without any other changes lets me reproduce this).

Testet on linux and windows as docker host. I have not tested any non-docker version.

Can anyone confirm this? Let me know if more info is needed.

BUG HOT TODO

All 19 comments

Same error here on Synology with Apache

fixed release in few mins

Fix Doesn't work on Installation on Apache installed on Synology - 1.4x works fine
Now getting 502

1.5.2 doesn't work for me either also a 502 (on ubuntu).
(mod_fastcgi.c.2478) response headers too large for /tasmoadmin/index.php

I'm not sure moving the configuration to a cookie really reduces much on the disk. we're still reading php files, with various includes. reading and writing cache and session files. I don't know of any other software doing this. The idea is admirable but if users wanted to reduce disk load then wouldn't a http cache like varnish or memcache to cache static files have a bigger impact?
Even if you manage to squeeze the headers small enough to satisfy php/webservers/browsers I believe you are going to run into this issue everytime you add a new configuration option.

1.5.2 works now in chrome via direct port, but reverse proxy still rejects it with a 502.

Maybe you can use localStorage instead of cookie for the config, that would still offer your desired change, but I am with @kevsgithub on this, client side config is not really needed in my opinion.

im not at home atm, ill change it to sessions and try again.

if you want to try it yourself, just change the set_cookie get_cookie to
$_SESSION["MyConfig"] = $config;
and
$config = $_SESSION["MyConfig"];

incudes/Config.php

config gets already only written if logged in, and if logged in the session exists, should work instant.

v1.5.3 is building

used sessions now.

thanks for all your feedbacks :)

Nice!
I was debugging this as well... glad it is fixed.

image

I was just trying to do your fix! Nevermind, installing 1.5.3 was easier.
I'm getting the following with 1.5.3 :
Fatal error: Uncaught Error: Class 'Config' not found in /var/www/tasmoadmin/includes/top.php:95 Stack trace: #0 /var/www/tasmoadmin/index.php(5): include_once() #1 {main} thrown in /var/www/tasmoadmin/includes/top.php on line 95

I just need to check that it wasn't my install.

update : completely wiped and reinstalled twice. same error.

@kevsgithub guess php autoload does not work on your php installation x.x

their are just so many diffrent systems/cases x)

@frenck yeah, i just found out set every set_cookie would send a new cookie header. there wont be a "smooth" way around without some bad hacking like setting a flag and set cookie once at the very end of the script. but this will split up a function which should stay together.

chrome has it own intern buffer limited, while running behind a proxy would need a additional line in the nginx config but would not affect chomes buffer limit. btw its 256kb, with all set set cookies it was by around 400kb

@kevsgithub nope its not you directly, im dev on windows, case unsensitive, while your unix is case sensitive x.x fix incoming

@kevsgithub, glad you faced the Fatal already and the fix (@reloxx13) is on it's way :-)

From my research :
Apache default limit is 8KB total for all headers - https://stackoverflow.com/a/8623061
I read somewhere else some systems are 4KB (minus overhead).

@reloxx13 for me php autoload works now (v1.5.4) on Chrome and Safari 馃挴

Works for me 馃憤

I'm now getting:

Fatal error: Uncaught Error: Class 'Config' not found in /var/www/tasmoadmin/tasmoadmin/includes/top.php:95 Stack trace: #0 /var/www/tasmoadmin/tasmoadmin/index.php(5): include_once() #1 {main} thrown in /var/www/tasmoadmin/tasmoadmin/includes/top.php on line 95

Going to dive in now.

@frenck have you been using v1.5.4 ?, for me and @kevsgithub the fatal error has been fixed

No 1.5.3, since that was the version an hour ago :(

Oh, come on guys...
You've really got to get some quality control in place...

1.5.4 seems ok indeed 馃憤

Was this page helpful?
0 / 5 - 0 ratings

Related issues

riddik14 picture riddik14  路  3Comments

reloxx13 picture reloxx13  路  7Comments

eeprom23 picture eeprom23  路  5Comments

arendst picture arendst  路  8Comments

eeprom23 picture eeprom23  路  3Comments