summaryrefslogtreecommitdiff
path: root/roles/collabora/code/templates
diff options
context:
space:
mode:
authorChristian Pointner <equinox@spreadspace.org>2019-10-16 01:32:03 +0200
committerChristian Pointner <equinox@spreadspace.org>2019-10-16 01:32:03 +0200
commit9e8ef5133562bf4ced6eac9ad1621adb3b3c5c16 (patch)
tree5f4008367035b232405c4133107a10147b6d1f61 /roles/collabora/code/templates
parentsk-cloudia: add role collabora/code (diff)
refactor nginx vhosts for nextcloud and collabora/code
Diffstat (limited to 'roles/collabora/code/templates')
-rw-r--r--roles/collabora/code/templates/nginx-vhost.conf.j2108
1 files changed, 108 insertions, 0 deletions
diff --git a/roles/collabora/code/templates/nginx-vhost.conf.j2 b/roles/collabora/code/templates/nginx-vhost.conf.j2
new file mode 100644
index 00000000..c0186df2
--- /dev/null
+++ b/roles/collabora/code/templates/nginx-vhost.conf.j2
@@ -0,0 +1,108 @@
+server {
+ listen 80;
+ listen [::]:80;
+ server_name {{ item.value.hostnames | join(' ') }};
+
+ include snippets/acmetool.conf;
+
+ location / {
+ return 301 https://$host$request_uri;
+ }
+}
+
+server {
+ listen 443 ssl http2;
+ listen [::]:443 ssl http2;
+ server_name {{ item.value.hostnames | join(' ') }};
+
+ include snippets/acmetool.conf;
+ include snippets/ssl.conf;
+ ssl_certificate /var/lib/acme/live/{{ item.value.hostnames[0] }}/fullchain;
+ ssl_certificate_key /var/lib/acme/live/{{ item.value.hostnames[0] }}/privkey;
+ include snippets/hsts.conf;
+
+
+ client_max_body_size 128M;
+
+ # static files
+ location ^~ /loleaflet {
+ include snippets/proxy-nobuff.conf;
+ include snippets/proxy-forward-headers.conf;
+
+ proxy_set_header Host $http_host;
+ proxy_pass http://127.0.0.1:{{ item.value.port }};
+
+ proxy_redirect http://$host/ https://$host/;
+ proxy_redirect http://$host:9980/ https://$host/;
+ }
+
+ # WOPI discovery URL
+ location ^~ /hosting/discovery {
+ include snippets/proxy-nobuff.conf;
+ include snippets/proxy-forward-headers.conf;
+
+ proxy_set_header Host $http_host;
+ proxy_pass http://127.0.0.1:{{ item.value.port }};
+
+ proxy_redirect http://$host/ https://$host/;
+ proxy_redirect http://$host:9980/ https://$host/;
+ }
+
+ # Capabilities
+ location ^~ /hosting/capabilities {
+ include snippets/proxy-nobuff.conf;
+ include snippets/proxy-forward-headers.conf;
+
+ proxy_set_header Host $http_host;
+ proxy_pass http://127.0.0.1:{{ item.value.port }};
+
+ proxy_redirect http://$host/ https://$host/;
+ proxy_redirect http://$host:9980/ https://$host/;
+ }
+
+ # main websocket
+ location ~ ^/lool/(.*)/ws$ {
+ include snippets/proxy-nobuff.conf;
+ include snippets/proxy-forward-headers.conf;
+
+ proxy_set_header Upgrade $http_upgrade;
+ proxy_set_header Connection $connection_upgrade;
+
+ proxy_read_timeout 36000s;
+
+ proxy_set_header Host $http_host;
+ proxy_pass http://127.0.0.1:{{ item.value.port }};
+
+ proxy_redirect http://$host/ https://$host/;
+ proxy_redirect http://$host:9980/ https://$host/;
+ }
+
+ # download, presentation and image upload
+ location ~ ^/lool {
+ include snippets/proxy-nobuff.conf;
+ include snippets/proxy-forward-headers.conf;
+
+ proxy_set_header Host $http_host;
+ proxy_pass http://127.0.0.1:{{ item.value.port }};
+
+ proxy_redirect http://$host/ https://$host/;
+ proxy_redirect http://$host:9980/ https://$host/;
+ }
+
+ # Admin Console websocket
+ location ^~ /lool/adminws {
+ include snippets/proxy-nobuff.conf;
+ include snippets/proxy-forward-headers.conf;
+
+ proxy_set_header Upgrade $http_upgrade;
+ proxy_set_header Connection $connection_upgrade;
+
+ proxy_read_timeout 36000s;
+
+ proxy_set_header Host $http_host;
+ proxy_pass http://127.0.0.1:{{ item.value.port }};
+
+ proxy_redirect http://$host/ https://$host/;
+ proxy_redirect http://$host:9980/ https://$host/;
+ }
+}