server { # Both IpV6 and IpV4 # listen 443 ssl http2; listen [::]:443 ssl http2; server_name {{ collabora_domain | mandatory }}; ssl_certificate /etc/letsencrypt/live/{{ collabora_domain }}/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/{{ collabora_domain }}/privkey.pem; access_log {{ www_log | mandatory }}/{{ collabora_domain }}/access.log; error_log {{ www_log | mandatory }}/{{ collabora_domain }}/error.log; # static files location ^~ /browser { proxy_pass https://localhost:{{ collabora_port | mandatory}}; proxy_set_header Host $http_host; } # WOPI discovery URL location ^~ /hosting/discovery { proxy_pass https://localhost:{{ collabora_port }}; proxy_set_header Host $http_host; } # Capabilities location ^~ /hosting/capabilities { proxy_pass https://localhost:{{ collabora_port }}; proxy_set_header Host $http_host; } # main websocket location ~ ^/cool/(.*)/ws$ { proxy_pass https://localhost:{{ collabora_port }}; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "Upgrade"; proxy_set_header Host $http_host; proxy_read_timeout 36000s; } # download, presentation and image upload location ~ ^/(c|l)ool { proxy_pass https://localhost:{{ collabora_port }}; proxy_set_header Host $http_host; } # Admin Console websocket location ^~ /cool/adminws { proxy_pass https://localhost:{{ collabora_port }}; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "Upgrade"; proxy_set_header Host $http_host; proxy_read_timeout 36000s; } }