Document loading failed - nextcloud aio

Hello,
Im getting an error when i try to load a document using collabora.

Document loading failed
Failed to load Nextcloud Office - Please try again

Im using nextcloud aio on rocky linux 8.5, running through a apache reverse proxy.
Cant seem to find any errors in the docker logs.
Let me know what you need to assist.

Regards
JPix

Hello, can you share the docker run command that you used or the docker-compose file? Thanks!

# cat docker-compose.yml
version: "3.8"

services:
  nextcloud-aio-apache:
    container_name: nextcloud-aio-apache
    depends_on:
#      - nextcloud-aio-onlyoffice
      - nextcloud-aio-collabora
      - nextcloud-aio-clamav
      - nextcloud-aio-talk
      - nextcloud-aio-nextcloud
    image: nextcloud/aio-apache:latest
    ports:
      - ${APACHE_PORT}:${APACHE_PORT}/tcp
    environment:
      - NC_DOMAIN=${NC_DOMAIN}
      - NEXTCLOUD_HOST=nextcloud-aio-nextcloud
      - COLLABORA_HOST=nextcloud-aio-collabora
      - TALK_HOST=nextcloud-aio-talk
      - APACHE_PORT=${APACHE_PORT}
      - ONLYOFFICE_HOST=nextcloud-aio-onlyoffice
    volumes:
      - nextcloud_aio_nextcloud:/var/www/html:ro
      - nextcloud_aio_apache:/mnt/data:rw
    stop_grace_period: 10s
    restart: unless-stopped
    networks:
      - nextcloud-aio

  nextcloud-aio-database:
    container_name: nextcloud-aio-database
    image: nextcloud/aio-postgresql:latest
    volumes:
      - nextcloud_aio_database:/var/lib/postgresql/data:rw
      - nextcloud_aio_database_dump:/mnt/data:rw
    environment:
      - POSTGRES_PASSWORD=${DATABASE_PASSWORD}
      - POSTGRES_DB=nextcloud_database
      - POSTGRES_USER=nextcloud
    stop_grace_period: 1800s
    restart: unless-stopped
    networks:
      - nextcloud-aio

  nextcloud-aio-nextcloud:
    container_name: nextcloud-aio-nextcloud
    depends_on:
      - nextcloud-aio-database
      - nextcloud-aio-redis
    image: nextcloud/aio-nextcloud:latest
    volumes:
      - nextcloud_aio_nextcloud:/var/www/html:rw
      - ${NEXTCLOUD_DATADIR}:/mnt/ncdata:rw
      - ${NEXTCLOUD_MOUNT}:${NEXTCLOUD_MOUNT}:rw
    environment:
      - POSTGRES_HOST=nextcloud-aio-database
      - POSTGRES_PASSWORD=${DATABASE_PASSWORD}
      - POSTGRES_DB=nextcloud_database
      - POSTGRES_USER=nextcloud
      - REDIS_HOST=nextcloud-aio-redis
      - REDIS_HOST_PASSWORD=${REDIS_PASSWORD}
      - AIO_TOKEN=${AIO_TOKEN}
      - NC_DOMAIN=${NC_DOMAIN}
      - ADMIN_USER=admin
      - ADMIN_PASSWORD=${NEXTCLOUD_PASSWORD}
      - NEXTCLOUD_DATA_DIR=/mnt/ncdata
      - OVERWRITEHOST=${NC_DOMAIN}
      - OVERWRITEPROTOCOL=https
      - TURN_SECRET=${TURN_SECRET}
      - SIGNALING_SECRET=${SIGNALING_SECRET}
      - AIO_URL=${AIO_URL}
      - NEXTCLOUD_MOUNT=${NEXTCLOUD_MOUNT}
      - CLAMAV_ENABLED=${CLAMAV_ENABLED}
      - CLAMAV_HOST=nextcloud-aio-clamav
      - ONLYOFFICE_ENABLED=${ONLYOFFICE_ENABLED}
      - COLLABORA_ENABLED=${COLLABORA_ENABLED}
      - COLLABORA_HOST=nextcloud-aio-collabora
      - TALK_ENABLED=${TALK_ENABLED}
      - ONLYOFFICE_HOST=nextcloud-aio-onlyoffice
      - DAILY_BACKUP_RUNNING=${DAILY_BACKUP_RUNNING}
    stop_grace_period: 10s
    restart: unless-stopped
    networks:
      - nextcloud-aio

  nextcloud-aio-redis:
    container_name: nextcloud-aio-redis
    image: nextcloud/aio-redis:latest
    environment:
      - REDIS_HOST_PASSWORD=${REDIS_PASSWORD}
    stop_grace_period: 10s
    restart: unless-stopped
    networks:
      - nextcloud-aio

  nextcloud-aio-collabora:
    container_name: nextcloud-aio-collabora
    image: nextcloud/aio-collabora:latest
    environment:
      - aliasgroup1=https://${NC_DOMAIN}:443
      - extra_params=--o:ssl.enable=false --o:ssl.termination=true --o:logging.level=warning
    stop_grace_period: 10s
    restart: unless-stopped
    networks:
      - nextcloud-aio

  nextcloud-aio-talk:
    container_name: nextcloud-aio-talk
    image: nextcloud/aio-talk:latest
    ports:
      - 3478:3478/tcp
      - 3478:3478/udp
    environment:
      - NC_DOMAIN=${NC_DOMAIN}
      - TURN_SECRET=${TURN_SECRET}
      - SIGNALING_SECRET=${SIGNALING_SECRET}
      - JANUS_API_KEY=${JANUS_API_KEY}
    stop_grace_period: 10s
    restart: unless-stopped
    networks:
      - nextcloud-aio

  nextcloud-aio-clamav:
    container_name: nextcloud-aio-clamav
    image: nextcloud/aio-clamav:latest
    volumes:
      - nextcloud_aio_clamav:/var/lib/clamav:rw
    stop_grace_period: 10s
    restart: unless-stopped
    networks:
      - nextcloud-aio

#  nextcloud-aio-onlyoffice:
#    container_name: nextcloud-aio-onlyoffice
#    image: nextcloud/aio-onlyoffice:latest
#    volumes:
#      - nextcloud_aio_onlyoffice:/var/lib/onlyoffice:rw
#    stop_grace_period: 10s
#    restart: unless-stopped
#    networks:
#      - nextcloud-aio

volumes:
  nextcloud_aio_apache:
    name: nextcloud_aio_apache
  nextcloud_aio_clamav:
    name: nextcloud_aio_clamav
  nextcloud_aio_database:
    name: nextcloud_aio_database
  nextcloud_aio_database_dump:
    name: nextcloud_aio_database_dump
  nextcloud_aio_nextcloud:
    name: nextcloud_aio_nextcloud
#  nextcloud_aio_onlyoffice:
#    name: nextcloud_aio_onlyoffice
  nextcloud_aio_nextcloud_data:
    name: nextcloud_aio_nextcloud_data

networks:
  nextcloud-aio:

Thanks! so you are running the manual installation with the apache conf that I’ll partially be using for add apache to reverse proxy documentation by szaimen · Pull Request #679 · nextcloud/all-in-one · GitHub.

Can you try to add websocket support to your apache config?
It should basically be these lines: add apache to reverse proxy documentation by szaimen · Pull Request #679 · nextcloud/all-in-one · GitHub

Already have this in my config.
I updated after you provided the websocket configuration:

    RewriteCond %{HTTP:Upgrade} websocket [NC]
    RewriteCond %{HTTP:Connection} upgrade [NC]
    RewriteRule ^/?(.*) "ws://locahost:11000/\$1" [P,L]

Is the websocket module also enabled?

Yes.

apachectl -M|grep ws

proxy_uwsgi_module (shared)
proxy_wstunnel_module (shared)

Hm… something in the browser console logs?

I think there is probably a typo in the websocket documentation. Can you try

    RewriteCond %{HTTP:Upgrade} websocket [NC]
    RewriteCond %{HTTP:Connection} upgrade [NC]
    RewriteRule ^/?(.*) "ws://locahost:11000/$1" [P,L]

(See the removed backslash before $1)

I have changed it so it looks like this:

    RewriteCond %{HTTP:Upgrade} websocket [NC]
    RewriteCond %{HTTP:Connection} upgrade [NC]
    RewriteRule ^/?(.*) "ws://locahost:11000/$1" [P,L]

Still same error.
I get this 404 error in my apache access log:
“GET /cool/https%3A%2F%2Fcloud.domain.com%2Findex.php%2Fapps%2Frichdocuments%2Fwopi%2Ffiles%2F204_ocuksab13ma4%3Faccess_token%133713371337(example)%26access_token_ttl%3D0%26permission%3Dedit/ws?WOPISrc=https%3A%2F%2Fcloud.domain.com%2Findex.php%2Fapps%2Frichdocuments%2Fwopi%2Ffiles%2F204_ocuksab13ma4&compat=/ws HTTP/1.1” 404 196 “-” “Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.67 Safari/537.36”

Hm… the issue does not say much to me…

Is something in the collabora logs?

kit-00031-00029 2022-05-22 15:15:33.334590 +0000 [ kit_spare_001 ] TRC  File [/opt/cool/child-roots/gVt9pnIy5fDOtIF2//etc/nsswitch.conf] is already up-to-date.| common/JailUtil.cpp:386
kit-00031-00029 2022-05-22 15:15:33.334697 +0000 [ kit_spare_001 ] TRC  File [/opt/cool/child-roots/gVt9pnIy5fDOtIF2//etc/resolv.conf] is already up-to-date.| common/JailUtil.cpp:386
kit-00031-00029 2022-05-22 15:15:33.334732 +0000 [ kit_spare_001 ] INF  Dynamic file [/etc/timezone] does not exist. Some functionality may be affected.| common/JailUtil.cpp:364
kit-00031-00029 2022-05-22 15:15:33.334756 +0000 [ kit_spare_001 ] INF  Dynamic file [/etc/localtime] does not exist. Some functionality may be affected.| common/JailUtil.cpp:364
kit-00031-00029 2022-05-22 15:15:33.334853 +0000 [ kit_spare_001 ] DBG  Making /dev/random node in [/opt/cool/child-roots/gVt9pnIy5fDOtIF2//tmp/dev].| common/JailUtil.cpp:256
kit-00031-00029 2022-05-22 15:15:33.334969 +0000 [ kit_spare_001 ] DBG  Making /dev/urandom node in [/opt/cool/child-roots/gVt9pnIy5fDOtIF2//tmp/dev].| common/JailUtil.cpp:268
kit-00031-00029 2022-05-22 15:15:33.335153 +0000 [ kit_spare_001 ] DBG  Initialized jail files in 1482ms| kit/Kit.cpp:2632
kit-00031-00029 2022-05-22 15:15:33.335213 +0000 [ kit_spare_001 ] INF  chroot("/opt/cool/child-roots/gVt9pnIy5fDOtIF2/")| kit/Kit.cpp:2638
kit-00031-00029 2022-05-22 15:15:33.335266 +0000 [ kit_spare_001 ] TRC  Capabilities first: = cap_chown,cap_fowner,cap_sys_chroot,cap_mknod+ep| kit/Kit.cpp:518
kit-00031-00029 2022-05-22 15:15:33.335312 +0000 [ kit_spare_001 ] TRC  Capabilities now: = cap_chown,cap_fowner,cap_mknod+ep| kit/Kit.cpp:537
kit-00031-00029 2022-05-22 15:15:33.335339 +0000 [ kit_spare_001 ] TRC  Capabilities first: = cap_chown,cap_fowner,cap_mknod+ep| kit/Kit.cpp:518
kit-00031-00029 2022-05-22 15:15:33.335362 +0000 [ kit_spare_001 ] TRC  Capabilities now: = cap_chown,cap_fowner+ep| kit/Kit.cpp:537
kit-00031-00029 2022-05-22 15:15:33.335385 +0000 [ kit_spare_001 ] TRC  Capabilities first: = cap_chown,cap_fowner+ep| kit/Kit.cpp:518
kit-00031-00029 2022-05-22 15:15:33.335415 +0000 [ kit_spare_001 ] TRC  Capabilities now: = cap_chown+ep| kit/Kit.cpp:537
kit-00031-00029 2022-05-22 15:15:33.335439 +0000 [ kit_spare_001 ] TRC  Capabilities first: = cap_chown+ep| kit/Kit.cpp:518
kit-00031-00029 2022-05-22 15:15:33.335488 +0000 [ kit_spare_001 ] TRC  Capabilities now: =| kit/Kit.cpp:537
kit-00031-00029 2022-05-22 15:15:33.335525 +0000 [ kit_spare_001 ] DBG  Initialized jail nodes, dropped caps.| kit/Kit.cpp:2660
kit-00031-00029 2022-05-22 15:15:33.335549 +0000 [ kit_spare_001 ] DBG  Initializing LOK with instdir [/lo/program] and userdir [file:///tmp/user].| kit/Kit.cpp:2673
kit-00031-00029 2022-05-22 15:15:33.337991 +0000 [ kit_spare_001 ] TRC  Install seccomp filter successfully.| common/Seccomp.cpp:250
kit-00031-00029 2022-05-22 15:15:33.338032 +0000 [ kit_spare_001 ] INF  RLIMIT_AS is 16777216.0 TiB (18446744073709551615 bytes)| kit/Kit.cpp:2715
kit-00031-00029 2022-05-22 15:15:33.338084 +0000 [ kit_spare_001 ] INF  RLIMIT_STACK is 7.8 MiB (8192000 bytes)| kit/Kit.cpp:2720
kit-00031-00029 2022-05-22 15:15:33.338113 +0000 [ kit_spare_001 ] INF  RLIMIT_FSIZE is 16777216.0 TiB (18446744073709551615 bytes)| kit/Kit.cpp:2725
kit-00031-00029 2022-05-22 15:15:33.338150 +0000 [ kit_spare_001 ] INF  RLIMIT_NOFILE is 1048576 files.| kit/Kit.cpp:2730
kit-00031-00029 2022-05-22 15:15:33.338172 +0000 [ kit_spare_001 ] INF  Kit process for Jail [gVt9pnIy5fDOtIF2] is ready.| kit/Kit.cpp:2734
office version details: { "ProductName": "Collabora Office", "ProductVersion": "21.06", "ProductExtension": ".28.1", "BuildId": "f63c415e21453a558b894c141efe7a0431ff96d9" }
kit-00031-00029 2022-05-22 15:15:33.338415 +0000 [ kit_spare_001 ] DBG  New SocketPoll [kit] owned by 0x7f258d5fe780| net/Socket.cpp:194
kit-00031-00029 2022-05-22 15:15:33.338502 +0000 [ kit_spare_001 ] DBG  Connecting to local UDS coolwsd-emGIr1vE| net/Socket.cpp:532
kit-00031-00029 2022-05-22 15:15:33.338553 +0000 [ kit_spare_001 ] TRC  #23 Created socket. Thread affinity set to 0x7f258d5fe780| net/Socket.hpp:375
kit-00031-00029 2022-05-22 15:15:33.338584 +0000 [ kit_spare_001 ] TRC  StreamSocket ctor #23| net/Socket.hpp:934
kit-00031-00029 2022-05-22 15:15:33.338606 +0000 [ kit_spare_001 ] TRC  #23 Connected to WS Handler 0x5596ff2a3f90| ./net/WebSocketHandler.hpp:166
kit-00031-00029 2022-05-22 15:15:33.338627 +0000 [ kit_spare_001 ] DBG  Connected to local UDS coolwsd-emGIr1vE #23| net/Socket.cpp:561wsd-00001-00028 2022-05-22 15:15:33.338591 +0000 [ prisoner_poll ] TRC  Poll completed with 1 live polls max (5000000us)| net/Socket.cpp:358

wsd-00001-00028 2022-05-22 15:15:33.338653 +0000 [ prisoner_poll ] TRC  Starting handling poll results of prisoner_poll #20 at index 0 (of 2): 1| net/Socket.cpp:437
kit-00031-00029 2022-05-22 15:15:33.338656 +0000 [ kit_spare_001 ] TRC  Requesting upgrade of websocket at path /coolws/newchild?jailid=gVt9pnIy5fDOtIF2&version=%7B%22BuildId%22:%22f63c415e21453a558b894c141efe7a0431ff96d9%22%2C%22ProductExtension%22:%22.28.1%22%2C%22ProductName%22:%22Collabora%20Office%22%2C%22ProductVersion%22:%2221.06%22%2C%22tunnelled_dialog_image_cache_size%22:%22100%22%7D #23| net/Socket.cpp:572
kit-00031-00029 2022-05-22 15:15:33.338694 +0000 [ kit_spare_001 ] TRC  performWrites (request header).| ./net/HttpRequest.hpp:510wsd-00001-00028 2022-05-22 15:15:33.338695 +0000 [ prisoner_poll ] DBG  Accepted prisoner socket #22, creating socket object.| net/Socket.cpp:910

wsd-00001-00028 2022-05-22 15:15:33.338726 +0000 [ prisoner_poll ] TRC  #22 Created socket. Thread affinity set to 0x7f47eae99700| ./net/Socket.hpp:375kit-00031-00029 2022-05-22 15:15:33.338732 +0000 [ kit_spare_001 ] TRC  performWrites (request body).| ./net/HttpRequest.hpp:527

wsd-00001-00028 2022-05-22 15:15:33.338753 +0000 [ prisoner_poll ] TRC  StreamSocket ctor #22| ./net/Socket.hpp:934kit-00031-00029 2022-05-22 15:15:33.338755 +0000 [ kit_spare_001 ] TRC  performWrites (request body): finished, total: 0| ./net/HttpRequest.hpp:545

wsd-00001-00028 2022-05-22 15:15:33.338776 +0000 [ prisoner_poll ] TRC  #22 Prisoner connected.| wsd/COOLWSD.cpp:3061
kit-00031-00029 2022-05-22 15:15:33.338786 +0000 [ kit_spare_001 ] TRC  #0 wrote 458 bytes of 458| net/Socket.hpp:1091
wsd-00001-00028 2022-05-22 15:15:33.338803 +0000 [ prisoner_poll ] DBG  Accepted socket is UDS - address uds-to-pid-31 and uid/gid 104/106| net/Socket.cpp:956kit-00031-00029 2022-05-22 15:15:33.338807 +0000 [ kit_spare_001 ] TRC  #23 Connected to WS Handler 0x5596ff2a3f90| ./net/WebSocketHandler.hpp:166

kit-00031-00029 2022-05-22 15:15:33.338829 +0000 [ kit_spare_001 ] DBG  Inserting socket #23, address [], into kit| ./net/Socket.hpp:739wsd-00001-00028 2022-05-22 15:15:33.338829 +0000 [ prisoner_poll ] TRC  Accepted client #22| net/ServerSocket.hpp:102

wsd-00001-00028 2022-05-22 15:15:33.338853 +0000 [ prisoner_poll ] DBG  Inserting socket #22, address [uds-to-pid-31], into prisoner_poll| ./net/Socket.hpp:739kit-00031-00029 2022-05-22 15:15:33.338852 +0000 [ kit_spare_001 ] TRC  #23 resetting thread affinity while in transit (was 0x7f258d5fe780)| ./net/Socket.hpp:329

kit-00031-00029 2022-05-22 15:15:33.338883 +0000 [ kit_spare_001 ] TRC  #23: Set socket buffer size to 262144| ./net/Socket.hpp:239wsd-00001-00028 2022-05-22 15:15:33.338884 +0000 [ prisoner_poll ] TRC  #22 resetting thread affinity while in transit (was 0x7f47eae99700)| ./net/Socket.hpp:329

kit-00031-00029 2022-05-22 15:15:33.338912 +0000 [ kit_spare_001 ] INF  New kit client websocket inserted.| kit/Kit.cpp:2815wsd-00001-00028 2022-05-22 15:15:33.338916 +0000 [ prisoner_poll ] TRC  #20: setupPollFds getPollEvents: 0x1| net/Socket.hpp:852

wsd-00001-00028 2022-05-22 15:15:33.338953 +0000 [ prisoner_poll ] TRC  #21: setupPollFds getPollEvents: 0x1| net/Socket.hpp:852
kit-00031-00029 2022-05-22 15:15:33.338954 +0000 [ kit_spare_001 ] INF  Kit initialization complete: setting log-level to [warning] as configured.| kit/Kit.cpp:2820
wsd-00001-00028 2022-05-22 15:15:33.338970 +0000 [ prisoner_poll ] TRC  ppoll start, timeoutMicroS: 5000000 size 2| net/Socket.cpp:339
wsd-00001-00028 2022-05-22 15:15:33.338992 +0000 [ prisoner_poll ] TRC  Poll completed with 1 live polls max (5000000us)| net/Socket.cpp:358
wsd-00001-00028 2022-05-22 15:15:33.339021 +0000 [ prisoner_poll ] TRC  #22 thread affinity set to 0x7f47eae99700 (was 0)| net/Socket.hpp:318
wsd-00001-00028 2022-05-22 15:15:33.339049 +0000 [ prisoner_poll ] TRC  PrisonerPoll - wakes up with 0 new children and 0 brokers and 1 kits forking| wsd/COOLWSD.cpp:2799
wsd-00001-00028 2022-05-22 15:15:33.339075 +0000 [ prisoner_poll ] TRC  rebalance children to 1| wsd/COOLWSD.cpp:468
wsd-00001-00028 2022-05-22 15:15:33.339101 +0000 [ prisoner_poll ] TRC  #20: setupPollFds getPollEvents: 0x1| net/Socket.hpp:852
wsd-00001-00028 2022-05-22 15:15:33.339122 +0000 [ prisoner_poll ] TRC  #21: setupPollFds getPollEvents: 0x1| net/Socket.hpp:852
wsd-00001-00028 2022-05-22 15:15:33.339140 +0000 [ prisoner_poll ] TRC  #22: setupPollFds getPollEvents: 0x1| net/Socket.hpp:852
wsd-00001-00028 2022-05-22 15:15:33.339162 +0000 [ prisoner_poll ] TRC  ppoll start, timeoutMicroS: 5000000 size 3| net/Socket.cpp:339
wsd-00001-00028 2022-05-22 15:15:33.339184 +0000 [ prisoner_poll ] TRC  Poll completed with 1 live polls max (5000000us)| net/Socket.cpp:358
wsd-00001-00028 2022-05-22 15:15:33.339209 +0000 [ prisoner_poll ] TRC  Starting handling poll results of prisoner_poll #21 at index 1 (of 3): 0| net/Socket.cpp:437
wsd-00001-00028 2022-05-22 15:15:33.339232 +0000 [ prisoner_poll ] TRC  #21: revents: 0x0| ./net/Socket.hpp:1286
wsd-00001-00028 2022-05-22 15:15:33.339253 +0000 [ prisoner_poll ] TRC  #20: setupPollFds getPollEvents: 0x1| net/Socket.hpp:852
wsd-00001-00028 2022-05-22 15:15:33.339273 +0000 [ prisoner_poll ] TRC  #21: setupPollFds getPollEvents: 0x1| net/Socket.hpp:852
wsd-00001-00028 2022-05-22 15:15:33.339291 +0000 [ prisoner_poll ] TRC  #22: setupPollFds getPollEvents: 0x1| net/Socket.hpp:852
wsd-00001-00028 2022-05-22 15:15:33.339314 +0000 [ prisoner_poll ] TRC  ppoll start, timeoutMicroS: 5000000 size 3| net/Socket.cpp:339
wsd-00001-00028 2022-05-22 15:15:33.339336 +0000 [ prisoner_poll ] TRC  Poll completed with 1 live polls max (5000000us)| net/Socket.cpp:358
wsd-00001-00028 2022-05-22 15:15:33.339361 +0000 [ prisoner_poll ] TRC  Starting handling poll results of prisoner_poll #22 at index 2 (of 3): 1| net/Socket.cpp:437
wsd-00001-00028 2022-05-22 15:15:33.339382 +0000 [ prisoner_poll ] TRC  #22: revents: 0x1| ./net/Socket.hpp:1286
wsd-00001-00028 2022-05-22 15:15:33.339415 +0000 [ prisoner_poll ] TRC  #22 Read 458 bytes in addition to 0 buffered bytes| ./net/Socket.hpp:1137
wsd-00001-00028 2022-05-22 15:15:33.339444 +0000 [ prisoner_poll ] TRC  #22 Incoming data buffer 458 bytes, closeSocket? false, events: 1| ./net/Socket.hpp:1304
wsd-00001-00028 2022-05-22 15:15:33.339503 +0000 [ prisoner_poll ] INF  #22: Prisoner HTTP Request: GET /coolws/newchild?jailid=gVt9pnIy5fDOtIF2&version=%7B%22BuildId%22:%22f63c415e21453a558b894c141efe7a0431ff96d9%22%2C%22ProductExtension%22:%22.28.1%22%2C%22ProductName%22:%22Collabora%20Office%22%2C%22ProductVersion%22:%2221.06%22%2C%22tunnelled_dialog_image_cache_size%22:%22100%22%7D HTTP/1.1 / User-Foo: Adminbits / Sec-WebSocket-Key: UZBiYH2cyCq0DQozBgDQPg== / Sec-WebSocket-Version: 13 / Accept-Language: en / Cache-Control: no-cache / Pragma: no-cache| net/Socket.cpp:1071
wsd-00001-00028 2022-05-22 15:15:33.339536 +0000 [ prisoner_poll ] TRC  Child connection with URI [/coolws/newchild?jailid=gVt9pnIy5fDOtIF2&version=%7B%22BuildId%22:%22f63c415e21453a558b894c141efe7a0431ff96d9%22%2C%22ProductExtension%22:%22.28.1%22%2C%22ProductName%22:%22Collabora%20Office%22%2C%22ProductVersion%22:%2221.06%22%2C%22tunnelled_dialog_image_cache_size%22:%22100%22%7D].| wsd/COOLWSD.cpp:3109
wsd-00001-00028 2022-05-22 15:15:33.339578 +0000 [ prisoner_poll ] INF  New child [31], jailId: gVt9pnIy5fDOtIF2.| wsd/COOLWSD.cpp:3158
wsd-00001-00028 2022-05-22 15:15:33.339605 +0000 [ prisoner_poll ] TRC  Calling make_shared<ChildProcess>, for NewChildren?| wsd/COOLWSD.cpp:3166
wsd-00001-00028 2022-05-22 15:15:33.339624 +0000 [ prisoner_poll ] TRC  #22: Upgrading to WebSocket.| ./net/WebSocketHandler.hpp:868
wsd-00001-00028 2022-05-22 15:15:33.339650 +0000 [ prisoner_poll ] INF  #22: WebSocket version: 13, key: [UZBiYH2cyCq0DQozBgDQPg==], protocol: [chat].| ./net/WebSocketHandler.hpp:879
wsd-00001-00028 2022-05-22 15:15:33.339687 +0000 [ prisoner_poll ] TRC  #22: Sending WS Upgrade response: Date: Sun, 22 May 2022 15:15:33
Server: COOLWSD HTTP Server 21.11.4.2
Upgrade: websocket
Connection: Upgrade
Sec-WebSocket-Accept: TYokwft2O+1vp6MqlhTK2uuoiCs=
| ./net/WebSocketHandler.hpp:891
wsd-00001-00028 2022-05-22 15:15:33.339724 +0000 [ prisoner_poll ] TRC  #22: Wrote 201 bytes of 201 buffered data| ./net/Socket.hpp:1430
wsd-00001-00028 2022-05-22 15:15:33.339754 +0000 [ prisoner_poll ] INF  ChildProcess ctor [31].| wsd/COOLWSD.hpp:58
wsd-00001-00028 2022-05-22 15:15:33.339775 +0000 [ prisoner_poll ] TRC  #22 resetting thread affinity while in transit (was 0x7f47eae99700)| ./net/Socket.hpp:329
wsd-00001-00028 2022-05-22 15:15:33.339801 +0000 [ prisoner_poll ] TRC  Calling addNewChild in disposition's move thing to add to NewChildren| wsd/COOLWSD.cpp:3177
wsd-00001-00028 2022-05-22 15:15:33.339822 +0000 [ prisoner_poll ] TRC  Adding one child to NewChildren| wsd/COOLWSD.cpp:523
wsd-00001-00028 2022-05-22 15:15:33.339841 +0000 [ prisoner_poll ] INF  Have 1 spare child after adding [31].| wsd/COOLWSD.cpp:527
wsd-00001-00028 2022-05-22 15:15:33.339859 +0000 [ prisoner_poll ] TRC  Notifying NewChildrenCV| wsd/COOLWSD.cpp:530
wsd-00001-00028 2022-05-22 15:15:33.339908 +0000 [ prisoner_poll ] TRC  Removing socket #22 (at 2 of 3) from prisoner_poll| net/Socket.cpp:473
wsd-00001-00028 2022-05-22 15:15:33.339947 +0000 [ prisoner_poll ] TRC  #20: setupPollFds getPollEvents: 0x1| net/Socket.hpp:852
wsd-00001-00001 2022-05-22 15:15:33.339950 +0000 [ coolwsd ] TRC  Have 1 new children.| wsd/COOLWSD.cpp:4995
wsd-00001-00001 2022-05-22 15:15:33.340050 +0000 [ coolwsd ] INF  WSD initialization complete: setting log-level to [warning] as configured.| wsd/COOLWSD.cpp:5011
Ready to accept connections on port 9980.

I see. We changed the loglevel to warning only so it might not log connection attempts at all…

Can you change this to - extra_params=--o:ssl.enable=false --o:ssl.termination=true --o:logging.level=debug, recreate the containers and try to open a document again and see if it logs connections attempts now?

I get this message in collabora container when i open the document:

nextcloud-aio-collabora    | wsd-00001-00032 2022-05-22 19:51:35.837849 +0000 [ accept_poll ] DBG  Inserting socket #28, address [::ffff:172.19.0.8], into websrv_poll| ./net/Socket.hpp:739
nextcloud-aio-collabora    | wsd-00001-00033 2022-05-22 19:51:35.838038 +0000 [ websrv_poll ] INF  #28: Client HTTP Request: POST /browser/3eff190/cool.html?WOPISrc=https%3A%2F%2Fcloud.domain.com%2Findex.php%2Fapps%2Frichdocuments%2Fwopi%2Ffiles%2F204_ocuksab13ma4&title=meh.odt&lang=da&closebutton=1&revisionhistory=1 HTTP/1.1 / Host: cloud.domain.com / User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.67 Safari/537.36 / Content-Length: 828 / 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.9 / Accept-Encoding: gzip, deflate, br / Accept-Language: da,en-US;q=0.9,en;q=0.8 / Cache-Control: max-age=0 / Content-Type: application/x-www-form-urlencoded / Cookie: PHPSESSID=123; oc_sessionPassphrase=123
nextcloud-aio-collabora    | wsd-00001-00033 2022-05-22 19:51:35.838131 +0000 [ websrv_poll ] DBG  #28: Not enough content yet: ContentLength: 828, available: 0| net/Socket.cpp:1081
nextcloud-aio-collabora    | wsd-00001-00033 2022-05-22 19:51:35.838230 +0000 [ websrv_poll ] INF  #28: Client HTTP Request: POST /browser/3eff190/cool.html?WOPISrc=https%3A%2F%2Fcloud.domain.com%2Findex.php%2Fapps%2Frichdocuments%2Fwopi%2Ffiles%2F204_ocuksab13ma4&title=meh.odt&lang=da&closebutton=1&revisionhistory=1 HTTP/1.1 / Host: cloud.domain.com / User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.67 Safari/537.36 / Content-Length: 828 / 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.9 / Accept-Encoding: gzip, deflate, br / Accept-Language: da,en-US;q=0.9,en;q=0.8 / Cache-Control: max-age=0 / Content-Type: application/x-www-form-urlencoded / Cookie: PHPSESSID=123; oc_sessionPassphrase=123
nextcloud-aio-collabora    | wsd-00001-00033 2022-05-22 19:51:35.838304 +0000 [ websrv_poll ] DBG  Handling request: /browser/3eff190/cool.html?WOPISrc=https%3A%2F%2Fcloud.domain.com%2Findex.php%2Fapps%2Frichdocuments%2Fwopi%2Ffiles%2F204_ocuksab13ma4&title=meh.odt&lang=da&closebutton=1&revisionhistory=1| wsd/COOLWSD.cpp:3388
nextcloud-aio-collabora    | wsd-00001-00033 2022-05-22 19:51:35.838460 +0000 [ websrv_poll ] DBG  Preprocessing file: /browser/dist/cool.html| wsd/FileServer.cpp:879
nextcloud-aio-collabora    | wsd-00001-00033 2022-05-22 19:51:35.838583 +0000 [ websrv_poll ] INF  WOPI host did not pass optional access_token_ttl| wsd/FileServer.cpp:924

I fear this unfortunately does not help much…

I think that probably the websocket config is still not working correctly.

Can you for a test try to change this:

to this?

    RewriteRule .* "ws://locahost:11000/$1" [P,L]

(it must be before the proxypass and proxypassreverse lines…)


I suppose these are all enabled?
a2enmod proxy

a2enmod proxy_http

a2enmod proxy_wstunnel

Another question: do you have some kind of adblocker enabled in your browser?
I am asking because another user had recently ublock origin enabled which blocked collabora from working…

I have changed the rewrite rule to:

RewriteRule .* "ws://locahost:11000/$1" [P,L]

I have theese proxy modules enabled so yes:
proxy_module (shared)
proxy_ajp_module (shared)
proxy_balancer_module (shared)
proxy_connect_module (shared)
proxy_express_module (shared)
proxy_fcgi_module (shared)
proxy_fdpass_module (shared)
proxy_ftp_module (shared)
proxy_http_module (shared)
proxy_hcheck_module (shared)
proxy_scgi_module (shared)
proxy_uwsgi_module (shared)
proxy_wstunnel_module (shared)
proxy_http2_module (shared)

And its added before proxypass and reverse
The rewrite rule didnt change anything, i still get the same error.
I do have ublock origin installed but have disabled it on my page and i still get the error.
I’ve tried to open the url in edge instead (With no plugins) but gives me the same error as in chrome.

Hm… does maybe onlyoffice work? If yes something is up with collabora, if not, I guess the apache config is still not correct…

I have the same problem when i set it to use onlyoffice.
The error is just Content has been block (roughly translated).

I think you’re right that it is something with the apache config.
What are the url’s that need to be redirected to websocket?