Error while handling Client WS Request: Invalid URI

Hello, I have a problem with my coolwsd service
When I try https://libreDomain.com/browser/fc0de5b/cool.html?wopisrc=https://appDomain.com/wopi/files/1884500%3Faccess_token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1bmlxdWVfblkFtZSI6IlNrYWxraW5WTiIsInByaW1hcnlzaWQiOiIyODY4OLKScnHR1cmUiOiJydS1SVSIsIkFjY2Vzc0xldmVscyI6IlVzZXIsQWRtaW4iLCJQcm92aWRlcklkIjoiMSIsIm5iZiI6MTcxMDMxNTYzMiwiZXhwIjoxNzEwNDA1NjMyLCJpYXQiOjE3MTAzMTUdlkczIsImlzcyI6IjEgZm9ybWEifQ.DLc94J6XXdSEqj0DnBnkmsJNNwi8SVvUSfKLJcndwQ
I have error


and Error on server:

WRN  Client - server version mismatch, disabling browser cache. Expected: 04343c2; Actual URI path with version hash: /browser/fc0de5b/cool.html| wsd/FileServer.cpp:529
ERR  #24: Error while handling Client WS Request: Invalid URI.| wsd/COOLWSD.cpp:5497
ERR  #24: Attempted to remove: 1362 which is > size: 0 clamped to 0| net/Socket.hpp:1241

what could be the reason for this behavior?

Hmmm… I think that warning means your versions are out of whack:

Client - server version mismatch […] Expected: 04343c2; Actual URI path with version hash: /browser/fc0de5b/cool.html […]

Your URL is trying to go towards:

  • https://libreDomain.com/browser/fc0de5b/cool.html
    • See the fc0de5b?

while your actual Collabora Online install is the git hash 04343c2.


According to Github for those 2 git hashes:

So first probably try to:

  • Update to the latest versions.

Hopefully that squishes your issue. :slight_smile:

Thanks for your reply!

I use this repo to build docker container:

Am I wrong? Have the same issue after installing

I’m using Nginx as reverse proxy and there is strange GET request
/cool//ws/ws

maybe that’s the problem?

libreoffice  | wsd-00001-00017 2024-03-21 10:01:45.901481 +0000 [ websrv_poll ] INF  #25: WebSocket version: 13, key: [key], protocol: [chat]| net/WebSocketHandler.hpp:956
libreoffice  | wsd-00001-00017 2024-03-21 10:01:45.901627 +0000 [ websrv_poll ] INF  #25: URL [] for WS Request.| wsd/COOLWSD.cpp:5388
libreoffice  | wsd-00001-00017 2024-03-21 10:01:45.901685 +0000 [ websrv_poll ] ERR  #25: Error while handling Client WS Request: Invalid URI.| wsd/COOLWSD.cpp:5497
libreoffice  | wsd-00001-00017 2024-03-21 10:01:45.901896 +0000 [ websrv_poll ] ERR  #25: Attempted to remove: 640 which is > size: 0 clamped to 0| net/Socket.hpp:1241
nginx        | 192.168.0.0 - - [21/Mar/2024:10:01:45 +0000] "GET /cool//ws/ws HTTP/1.1" 101 64 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36" "-"

Yes, that might be the root of the problem.

Doing a search for that specific error:

  • Error while handling Client WS Request: Invalid URI + collabora

lead me to 2 previous topics (from 2019), where the user found it was a bad NGINX install.

They solved it by refollowing the install instructions. Hopefully that works for you too!

Thanks for your reply! I’m using proxy settings from collaboraonline documentation.
I found solution here: Incorrect or missing WOPISrc parameter, please contact technical support · Issue #273 · owncloud/richdocuments · GitHub

But when i try this URL:

(https://libreoffice.net/browser/04343c2/cool.html?wopisrc=https://domain.net/wopi/files/1884500%3Faccess_token=TOKEN)

I have this result

and there is no errors in logs

libreoffice  | wsd-00001-00035 2024-03-26 10:28:47.956338 +0000 [ websrv_poll ] INF  Thread 35 (7f55cd9d96c0) of process 1 formerly unnamed is now called [websrv_poll]| common/Util.cpp:681
libreoffice  | wsd-00001-00035 2024-03-26 10:28:47.956410 +0000 [ websrv_poll ] INF  Starting polling thread [websrv_poll] with thread affinity set to 0x7f55cd9d96c0.| net/Socket.cpp:306
libreoffice  | wsd-00001-00035 2024-03-26 10:28:55.213254 +0000 [ websrv_poll ] INF  #25: Client HTTP Request: GET /browser/04343c2/cool.html?wopisrc=https://dnepr.1forma.net/wopi/files/1884500%3Faccess_token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1bmlxdWVfbmFtZSI6IlNrYWxraW5WTiIsInByaW1hcnlzaWQiOiIyODY4OCIsIkN1bHR1cmUiOiJydS1SVSIsIkFjY2Vzc0xldmVscyI6IlVzZXIsQWRtaW4iLCJQcm92aWRlcklkIjoiMSIsIm5iZiI6MTcxMTM3NDA5MiwiZXhwIjoxNzExNDY0MDkyLCJpYXQiOjE3MTEzNzQwOTIsImlzcyI6IjEgZm9ybWEifQ.te1l_M-KniqcfwsxUSUSTn6XpGnmJsNLJqflLQIeukQ HTTP/1.0 Host: libreoffice.1forma.net / Connection: close / Cache-Control: max-age=0 / Authorization: Basic MWZvcm1hOm4rZEpZeDRLN1NDIWxWdCZhNzRXTElqbm9NbmE2MlI= / sec-ch-ua: "Chromium";v="122", "Not(A:Brand";v="24", "Google Chrome";v="122" / sec-ch-ua-mobile: ?0 / sec-ch-ua-platform: "macOS" / Upgrade-Insecure-Requests: 1 / User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36 / Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7 / Sec-Fetch-Site: none / Sec-Fetch-Mode: navigate / Sec-Fetch-User: ?1 / Sec-Fetch-Dest: document / Accept-Encoding: gzip, deflate, br, zstd / Accept-Language: ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7 / Cookie: btst=dad24a0ab41d637cb5b4944e80957c36|95.24.96.203|1697788016|1697788016|0|2|0 / If-None-Match: "04343c2" / If-Modified-Since: Tue, 26 Mar 2024 10:28:27| net/Socket.cpp:1152
nginx        | 192.168.159.13 - 1forma [26/Mar/2024:10:28:55 +0000] "GET /browser/04343c2/cool.html?wopisrc=https://dnepr.1forma.net/wopi/files/1884500%3Faccess_token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1bmlxdWVfbmFtZSI6IlNrYWxraW5WTiIsInByaW1hcnlzaWQiOiIyODY4OCIsIkN1bHR1cmUiOiJydS1SVSIsIkFjY2Vzc0xldmVscyI6IlVzZXIsQWRtaW4iLCJQcm92aWRlcklkIjoiMSIsIm5iZiI6MTcxMTM3NDA5MiwiZXhwIjoxNzExNDY0MDkyLCJpYXQiOjE3MTEzNzQwOTIsImlzcyI6IjEgZm9ybWEifQ.te1l_M-KniqcfwsxUSUSTn6XpGnmJsNLJqflLQIeukQ HTTP/1.1" 200 35362 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36" "-"

Am I doing something wrong?

Hmmm… then let’s go back to the basics.


Did you follow the instructions here?

When you ran this the very first time:

curl -k https://localhost:9980

Did you get an “OK”?


Then you moved on to install NGINX.

You then followed the instructions here?