{# code: language=ansible-jinja #} # THIS FILE IS MANAGED BY ANSIBLE server { listen 8080; server_name {{ apps_vars.nextcloud.domain }}; location / { set $upstream http://nextcloud:80; proxy_pass $upstream; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto "https"; proxy_set_header X-Real-IP $remote_addr; proxy_set_header Host $host; # WebSocket support proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection $connection_upgrade; # Options required by Nextcloud client_body_buffer_size 512k; client_max_body_size 0; # UnifiedPush proxy_connect_timeout 10m; proxy_send_timeout 10m; proxy_read_timeout 10m; } # UnifiedPush Matrix gateway location /_matrix/push/v1/notify { set $upstream http://nextcloud:80; proxy_pass $upstream/index.php/apps/uppush/gateway/matrix; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto "https"; proxy_set_header X-Real-IP $remote_addr; proxy_set_header Host $host; } # CalDAV & CardDAV location ~^/\.well-known/(cal|card)dav$ { return 301 https://$host/remote.php/dav; } }