mirror of
https://github.com/YunoHost-Apps/peertube_ynh.git
synced 2024-09-03 19:56:29 +02:00
Fix #382
This commit is contained in:
parent
fbf90aa884
commit
3d88eded57
1 changed files with 18 additions and 14 deletions
|
@ -22,6 +22,7 @@ location @api {
|
||||||
location = /api/v1/videos/upload-resumable {
|
location = /api/v1/videos/upload-resumable {
|
||||||
client_max_body_size 0;
|
client_max_body_size 0;
|
||||||
proxy_request_buffering off;
|
proxy_request_buffering off;
|
||||||
|
|
||||||
try_files /dev/null @api;
|
try_files /dev/null @api;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -44,6 +45,13 @@ location ~ ^/api/v1/videos/(upload|([^/]+/studio/edit))$ {
|
||||||
try_files /dev/null @api;
|
try_files /dev/null @api;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
location ~ ^/api/v1/runners/jobs/[^/]+/(update|success)$ {
|
||||||
|
client_max_body_size 12G; # default is 1M
|
||||||
|
more_set_headers "X-File-Maximum-Size : 8G always"; # inform backend of the set value in bytes before mime-encoding (x * 1.4 >= client_max_body_size)
|
||||||
|
|
||||||
|
try_files /dev/null @api;
|
||||||
|
}
|
||||||
|
|
||||||
location ~ ^/api/v1/(videos|video-playlists|video-channels|users/me) {
|
location ~ ^/api/v1/(videos|video-playlists|video-channels|users/me) {
|
||||||
client_max_body_size 6M; # default is 1M
|
client_max_body_size 6M; # default is 1M
|
||||||
more_set_headers "X-File-Maximum-Size : 4M always"; # inform backend of the set value in bytes before mime-encoding (x * 1.4 >= client_max_body_size)
|
more_set_headers "X-File-Maximum-Size : 4M always"; # inform backend of the set value in bytes before mime-encoding (x * 1.4 >= client_max_body_size)
|
||||||
|
@ -89,6 +97,7 @@ location ~ ^/plugins/[^/]+(/[^/]+)?/ws/ {
|
||||||
##
|
##
|
||||||
|
|
||||||
root __DATADIR__;
|
root __DATADIR__;
|
||||||
|
|
||||||
# Enable compression for JS/CSS/HTML, for improved client load times.
|
# Enable compression for JS/CSS/HTML, for improved client load times.
|
||||||
# It might be nice to compress JSON/XML as returned by the API, but
|
# It might be nice to compress JSON/XML as returned by the API, but
|
||||||
# leaving that out to protect against potential BREACH attack.
|
# leaving that out to protect against potential BREACH attack.
|
||||||
|
@ -159,7 +168,7 @@ location ~ ^/static/(thumbnails|avatars)/ {
|
||||||
try_files $uri @api;
|
try_files $uri @api;
|
||||||
}
|
}
|
||||||
|
|
||||||
location ~ ^(/static/(webseed|streaming-playlists)/private/)|^/download {
|
location ~ ^(/static/(webseed|web-videos|streaming-playlists)/private/)|^/download {
|
||||||
# We can't rate limit a try_files directive, so we need to duplicate @api
|
# We can't rate limit a try_files directive, so we need to duplicate @api
|
||||||
|
|
||||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||||
|
@ -172,20 +181,14 @@ location ~ ^(/static/(webseed|streaming-playlists)/private/)|^/download {
|
||||||
}
|
}
|
||||||
|
|
||||||
# Bypass PeerTube for performance reasons. Optional.
|
# Bypass PeerTube for performance reasons. Optional.
|
||||||
location ~ ^/static/(webseed|redundancy|streaming-playlists)/ {
|
location ~ ^/static/(webseed|web-videos|redundancy|streaming-playlists)/ {
|
||||||
limit_rate_after 5M;
|
limit_rate_after 5M;
|
||||||
|
|
||||||
# Clients usually have 4 simultaneous webseed connections, so the real limit is 3MB/s per client
|
|
||||||
set $peertube_limit_rate 800k;
|
|
||||||
|
|
||||||
# Increase rate limit in HLS mode, because we don't have multiple simultaneous connections
|
|
||||||
if ($request_uri ~ -fragmented.mp4$) {
|
|
||||||
set $peertube_limit_rate 5M;
|
set $peertube_limit_rate 5M;
|
||||||
}
|
|
||||||
|
|
||||||
# Use this line with nginx >= 1.17.0
|
# Use this line with nginx >= 1.17.0
|
||||||
limit_rate $peertube_limit_rate;
|
limit_rate $peertube_limit_rate;
|
||||||
# Or this line if your nginx < 1.17.0
|
# Or this line with nginx < 1.17.0
|
||||||
# set $limit_rate $peertube_limit_rate;
|
# set $limit_rate $peertube_limit_rate;
|
||||||
|
|
||||||
if ($request_method = 'OPTIONS') {
|
if ($request_method = 'OPTIONS') {
|
||||||
|
@ -213,7 +216,8 @@ location ~ ^/static/(webseed|redundancy|streaming-playlists)/ {
|
||||||
sendfile_max_chunk 1M; # prevent one fast connection from entirely occupying the worker process. should be > 800k.
|
sendfile_max_chunk 1M; # prevent one fast connection from entirely occupying the worker process. should be > 800k.
|
||||||
aio threads;
|
aio threads;
|
||||||
|
|
||||||
rewrite ^/static/webseed/(.*)$ /videos/$1 break;
|
# web-videos is the name of the directory mapped to the `storage.web_videos` key in your PeerTube configuration
|
||||||
|
rewrite ^/static/webseed/(.*)$ /web-videos/$1 break;
|
||||||
rewrite ^/static/(.*)$ /$1 break;
|
rewrite ^/static/(.*)$ /$1 break;
|
||||||
|
|
||||||
root __DATADIR__;
|
root __DATADIR__;
|
||||||
|
|
Loading…
Add table
Reference in a new issue