events {}

http {
    client_max_body_size 20G;
    ignore_invalid_headers  off;

    server {
        listen 80;

       location /tus/ {
            proxy_pass http://127.0.0.1:1080/tus/;

            proxy_pass_request_headers on;

            proxy_request_buffering  off;
            proxy_buffering          off;
            proxy_http_version       1.1;

            proxy_set_header Host $http_host;
            proxy_set_header X-Forwarded-Host $http_host;
            proxy_set_header X-Forwarded-Proto $scheme;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

            proxy_set_header         Upgrade $http_upgrade;
            proxy_set_header         Connection "upgrade";
        }

        location / {
            proxy_pass http://127.0.0.1:3000;

            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";

            proxy_set_header Host $http_host;
            proxy_set_header X-Forwarded-Host $http_host;
            proxy_set_header X-Forwarded-Proto $scheme;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }
    }
}
