Log contains many lines like this:
DBG DBG web/context.go:113 > timestamp=2023-02-21 11:58:11.189 Z msg=Failed to upgrade websocket connection. path=/api/v4/websocket request_id=78z8jntyabdm5p5kdiw9b5td5w ip_addr=192.168.1.11 user_id=r8m9gk6mgfb7te3i79pco6r59h method=GET err_where=connect http_code=400 error=connect: Failed to upgrade websocket connection., websocket: the client is not using the websocket protocol: ‘upgrade’ token not found in ‘Connection’ header
Thank you for the input, shurrman! I don’t see that the error is that clear, it does not mention any port?
“Failed to upgrade websocket connection”
“‘upgrade’ token not found in ‘Connection’ header”
How does this tell me that it’s about the reverse proxy?
More importantly, how do I fix this? As stated, I have already port-forwarded 8065 and 8443 directly from my gateway to my server. Is that not it? What more is needed?
For reference, the reverse proxy I currently use is the “Application Portal” built into my Synology NAS. Is “websocket” something special, something different than HTTP(S) requests, that this reverse proxy application does not support?
I think your suggestion will work to prove the Mattermost installation, but that method is impractical for actual use because no other services would be available; without any reverse proxy to direct traffic, I would then be running only that service.
I am looking to replace the Synology reverse proxy with Traefik instead, but that’s another separate project and I do not know whether Traefik supports websockets!
I am clearly not a network engineer, so this is frustratingly complicated. Thank you for your help!
Hmm… the /myorganisation at the end confuses me. According to your .env file, there is no /myorganisation part at the end.
Your SiteUrl is set to https://chat.g~~~~o.e~ without the /myorganisation at the end, the SSL certificate also looks fine, so I’m unsure about what the problem with the websockets could be.
When you open the menu of the desktop app, there’s an option to view the developer tools for the current server:
Would be interesting to see if there are any error messages in the console.
You do not need to add the team name to the URL for connecting in the desktop app, maybe this is also the problem here. Please just use https://chat.yourdomain.eu, the desktop app will automatically add the teamname then once you logged in.
Can you remove the profile in your desktop app and try to create a new one with just the domain name in the connection details and let me know if that changes anything with regrads to the websockets?
If it doesn’t: Can you expand the error messages you’re seeing in the console here? Are there any more details available as to why the connect has been closed f.ex.?
First, I removed the existing server connection. I was sent to the normal welcome screen. This is expected. I entered the server URL, and I did not enter the “/team” part of the URL at the end. After some seconds, the familiar red error banner appears. See screenshots here (Imgur).
Expanding the error message does not reveal a lot. Is this useful?
You are absolutely correct, and that is yet another work in progress. (So many ongoing projects in my home lab!) Using built-in functionality of Synology was an easy way to get started.
I am working on transitioning to Traefik running on a separate server machine, but of course Traefik is also a whole can of worms. Or, instead of Traefik, use Nginx directly, which is even more complicated. After all, people can make a full-time living based on these things; no wonder it’s a bit overwhelming for an average IT guy!
I will get there eventually. This was one important step.