Collabora Online host determination problem?

Hello,
I currently have an instance of LibreOffice Online (LOOL) running in a Docker container, providing services to multiple clients.
Thanks to an Apache reverse proxy, client A can edit their documents at https://clientA.domain.com, client B at https://clientB.domain.com, and so on.
Everything is working perfectly.

I have started testing, in the same environment, to migrate to Collabora Online (COOL). I am replicating the same conditions: a Docker container behind the same Apache reverse proxy, whose configuration has been adapted to the new paths (as indicated in the COOL documentation).
I do not specify any server_name parameter when launching the COOL container because I want it to be dynamically determined for each request, similar to what my LOOL container currently does very well.
Unfortunately, this new deployment with COOL does not work: COOL cannot or does not know how to determine the caller’s hostname using the host or the X-Forwarded-Host header of the incoming HTTP request. It systematically uses the hostname assigned to the container by Docker!
If I specify the server_name “clientA.domain.com” when creating the COOL container, client A can edit their documents without any issues (which proves that the rest of the configuration is OK)… but not client B, nor client C, nor…

Is there a limitation in COOL that only allows deployment behind a single host (no dynamic host determination) ?

Thank you in advance for your response.

Env : Collabora Online 24.04.13.3 - SSL Termination (ssl.enable=false and ssl.termination=true]

hii @wweiers Welcome to collabora online forum

Yes, by default COOL (Collabora Online) is not configured to dynamically accept any host via Host or X-Forwarded-Host headers like LOOL did. However, you can support multiple dynamic virtual hosts using the alias_group mechanism and some configuration in coolwsd.xml.

Unlike LOOL, COOL introduced stricter hostname validation to improve security. That means it validates requests against server_name and does not automatically trust Host or X-Forwarded-Host.

COOL, by default, only serves the hostname passed in --o:server_name. If not set, it uses the system hostname — hence your observation that all requests route to the container’s hostname