diff --git a/data/nginx/files/extras/rottenraptor-server/radio b/data/nginx/files/extras/rottenraptor-server/radio index 4452701..76f2810 100644 --- a/data/nginx/files/extras/rottenraptor-server/radio +++ b/data/nginx/files/extras/rottenraptor-server/radio @@ -1,9 +1,32 @@ location / { proxy_pass http://172.30.17.52:8000/; - proxy_http_version 1.0; - proxy_buffering off; + + # Ensure streams don't end after a short time. proxy_read_timeout 7d; + # Disable request size limit, very important for uploading large files + client_max_body_size 0; + + # Enable support `Transfer-Encoding: chunked` + chunked_transfer_encoding on; + + # Disable request and response buffering, minimize latency to/from Icecast + proxy_buffering off; + proxy_request_buffering off; + + # Icecast needs HTTP/1.1, not 1.0 or 2 + proxy_http_version 1.1; + + # Forward all original request headers + proxy_pass_request_headers on; + + # Set some standard reverse proxy headers. Icecast server currently ignores these, + # but may support them in a future version so that access logs are more useful. + proxy_set_header Host $http_host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + auth_basic "Rotten City Eventradio"; auth_basic_user_file /etc/nginx/radio-htpasswd;