server { listen 80 default_server; listen [::]:80 default_server; server_name _; return 301 https://$host$request_uri; } server { listen 443 ssl http2; listen [::]:443 ssl http2; server_name siasky.net www.siasky.net; # replace with actual server names location / { root /home/user/skynet-webportal/packages/sia-skynet/build; # path to root of index.html } location /skynet/skyfile/ { client_max_body_size 1000M; # make sure to limit the size of upload to a sane value proxy_read_timeout 600; proxy_pass http://127.0.0.1:4000; } location ~ "^/([a-zA-Z0-9-_]{46})$" { proxy_read_timeout 600; # proxy this call to siad /skunet/skylink/ endpoint (make sure the ip is correct) proxy_pass http://127.0.0.1:9980/skynet/skylink/$1; proxy_set_header Access-Control-Allow-Origin: *; # make sure to override user agent header - siad requirement proxy_set_header User-Agent: Sia-Agent; # replace BASE64_AUTHENTICATION with base64 encoded : # for sia user is empty so it's just : # to generate the passcode use https://www.base64encode.org or any other base64 encoder proxy_set_header Authorization "Basic BASE64_AUTHENTICATION"; } location ~ "^/file/([a-zA-Z0-9-_]{46})$" { proxy_read_timeout 600; # proxy this call to siad /skunet/skylink/ endpoint (make sure the ip is correct) # this alias also adds attachment=true url param to force download the file proxy_pass http://127.0.0.1:9980/skynet/skylink/$1?attachment=true; proxy_set_header Access-Control-Allow-Origin: *; # make sure to override user agent header - siad requirement proxy_set_header User-Agent: Sia-Agent; # replace BASE64_AUTHENTICATION with base64 encoded : # for sia user is empty so it's just : # to generate the passcode use https://www.base64encode.org or any other base64 encoder proxy_set_header Authorization "Basic BASE64_AUTHENTICATION"; } # SLL CERTIFICATES BELOW THIS LINE }