You need to make sure the reverse proxy forwards all the headers to the FileRun server. In other words, your reverse proxy must be fully transparent.
Here is an Nginx configuration example:
1proxy_set_header Host $host;
2proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
3proxy_set_header X-Forwarded-Proto $scheme;
4proxy_set_header X-Forwarded-Protocol $scheme;
5proxy_set_header X-Forwarded-Port $server_port;
If the custom port number is not being forwarded, you might want to try to change the last line like this:
1proxy_set_header X-Forwarded-Port $port;
Being able to resume uploads at the exact byte a transfer was interrupted can save a lot of time. To enable it, add the following line to the reverse proxy configuration:
1proxy_request_buffering off;
When using NPM (Nginx Proxy Manager), add this line under the Advanced
configuration section (the cog icon). It is the same place where you
have configured the forwarding of the HTTP headers. See the
Adding SSL guide for details.
After making this change you will notice that you can cancel an upload at any moment, and all the transferred bytes will be found on the server.