Cannot change GUI configuration settings

Hi,

I recently installed syncthing on Debian on a free tier google cloud vm. I installed syncthing v1.2.2 via packages, set-up a syncthing user and group and it runs via systemd the GUI is proxied via nginx. It was working flawless; I added devices and folders without problems.

I recently upgraded to v1.3.0 via packages. I added the device ID of this server on a new syncthing server and when I try to accept the invitation the GUI responds with: “Connection Error. Syncthing seems to be experiencing a problem processing your request. Please refresh the page or restart Syncthing if the problem persists.” I discovered I get the same response when I try to adjust anything in the settings, such as set the GUI theme to dark, or add a folder. Apart from this syncthing is syncing current folders with current devices without problems.

I tried:

  • Because systemctl status gave a warning “The unit file, source configuration file or drop-ins of syncthing@syncthing.service changed on disk.” (I think due to the pkd upgrade): sudo systemctl daemon-reload
  • restart syncthing
  • restart vm

I am new to working with linux and commandline. After installing syncthing a few times on different free cloud providers I am becoming more comfortable using the commandline and I think I made a proper installation on this vm.

Thanks for taking the time to read through and I hope someone is willing to help me out a bit.

Check js console for errors, I suspect there will be some complaints there, about a race condition someone reported.

Actually having checked, I can’t see under what circumstances the race condition would exist, but regardless, the truth lies in your javascript console.

I’ve had some problems running syncthing behind nginx until I adjusted some proxy timeouts (and possibly buffers, not sure).

I activated the developer console in chrome.

When I access the GUI it throws the following error (replaced my https domain with domain):

  • angular.js:9912 GET domain/rest/system/upgrade 500 (Internal Server Error)

Once I try to accept the device:

  • angular.js:9912 POST domain/rest/system/config 413 (Request Entity Too Large)

  • angular.js:9912 POST domain/rest/system/config 413 (Request Entity Too Large)

  • syncthingController.js:178 HTTPError {data: " ↵413 Request Entity Too Large<…disable MSIE and Chrome friendly error page --> ↵", status: 413, config: {…}, headers: ƒ}

  • multiple errors: syncthingController.js:561 refreshErrors {errors: null}

So both when accessing the GUI as well as when trying to do something that changes its configuration, an error emerges from angular.js 9912: xhr.send(post || null); in the function: function createHttpBackend($browser, createXhr, $browserDefer, callbacks, rawDocument)

I copied the whole content of the 413 error: angular.js:9912 POST domain/rest/system/config 413 (Request Entity Too Large) (anonymous) @ angular.js:9912 sendReq @ angular.js:9713 serverRequest @ angular.js:9425 processQueue @ angular.js:13337 (anonymous) @ angular.js:13353 $eval @ angular.js:14589 $digest @ angular.js:14405 $apply @ angular.js:14694 (anonymous) @ angular.js:21724 dispatch @ jquery-2.2.2.js:4755 elemData.handle @ jquery-2.2.2.js:4567

EDIT: I will play with my nginx settings first then Nummer378

EDIT2: Thanks for the quick response here! It was indeed one of my nginx settings, from a website about hardening nginx I had added the following: client_body_buffer_size 1k; client_header_buffer_size 1k; client_max_body_size 1k; large_client_header_buffers 2 1k; After removing this the GUI is working fine again. I do still get the 500 error of the rest/system/upgrade, but I can add and remove devices again. Thank you very much!!!

500 during upgrade is expected if upgrades are disabled at compile time.

1k (which is 1024 characters) is way too low for a json config.