diff --git a/docker/nginx/conf.d/client.conf b/docker/nginx/conf.d/client.conf index fabf52da..3033f54f 100644 --- a/docker/nginx/conf.d/client.conf +++ b/docker/nginx/conf.d/client.conf @@ -289,6 +289,8 @@ server { location ~ "^/file/([a-zA-Z0-9-_]{46}(/.*)?)$" { include /etc/nginx/conf.d/include/proxy-buffer; + rewrite /file/(.*) $1 break; # drop the /file/ prefix from uri + proxy_pass http://127.0.0.1/$uri?attachment=true&$args; } diff --git a/docker/nginx/conf.d/include/proxy-cache-downloads b/docker/nginx/conf.d/include/proxy-cache-downloads index 91343934..f3f82a5f 100644 --- a/docker/nginx/conf.d/include/proxy-cache-downloads +++ b/docker/nginx/conf.d/include/proxy-cache-downloads @@ -2,7 +2,7 @@ proxy_cache skynet; slice 1m; proxy_http_version 1.1; # upgrade if necessary because 1.0 does not support byte-range requests proxy_set_header Range $slice_range; # pass slice range to proxy -proxy_cache_key $uri$arg_format$slice_range; # use just the uri path, format arg and slice range +proxy_cache_key $uri$arg_format$arg_attachment$slice_range; # use just the uri path, format and attachment args and slice range proxy_cache_min_uses 3; # cache responses after 3 requests of the same file proxy_cache_valid 200 206 24h; # cache 200 and 206 responses for 24 hours proxy_cache_bypass $cookie_nocache $arg_nocache; # add cache bypass option