server {
  listen          80;
  server_name     gallery.secretbee.buzz;

  location / {
    return 301 https://$host$request_uri;
  }
}

server {
    listen         443 ssl;
    server_name gallery.secretbee.buzz;

    add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;

    ssl_certificate     /etc/letsencrypt/live/gallery.secretbee.buzz/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/gallery.secretbee.buzz/privkey.pem;
    ssl_protocols       TLSv1.2 TLSv1.3;
    ssl_ciphers         HIGH:!aNULL:!MD5;

    # allow large file uploads
    client_max_body_size 50000M;

    # disable buffering uploads to prevent OOM on reverse proxy server and make uploads twice as fast (no pause)
    proxy_request_buffering off;

    # increase body buffer to avoid limiting upload speed
    client_body_buffer_size 1024k;

    # Set headers
    proxy_set_header Host              $host;
    proxy_set_header X-Real-IP         $remote_addr;
    proxy_set_header X-Forwarded-For   $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;

    # enable websockets: http://nginx.org/en/docs/http/websocket.html
    proxy_http_version 1.1;
    proxy_redirect     off;

    # set timeout
    proxy_read_timeout 600s;
    proxy_send_timeout 600s;
    send_timeout       600s;

    location / {
        proxy_pass http://localhost:2283;
        proxy_set_header   Upgrade    $http_upgrade;
        proxy_set_header   Connection "upgrade";
    }

    location /siri {
        return 301 https://gallery.secretbee.buzz/s/siri;
    }
}