## Version 2023/02/05 # make sure that your transmission container is named transmission # transmission does not require a base url setting # # Some Transmission Chrome extensions cannot handle HTTP/2 proxies as they # rely on the HTTP Status Text to determine if they should add the # X-Transmission-Session-Id header or not. HTTP/2 does not return this text # so jQuery responses are empty. This causes RPCs to fail. # # If your extension is affected, you can remove http2 from the default server # in /config/nginx/site-confs/default or listen on a different port that has # no http2 servers defined. Better yet, submit a bug report with the # extension developer to fix their extensions to support HTTP/2. location ^~ /transmission { # enable the next two lines for http auth #auth_basic "Restricted"; #auth_basic_user_file /config/nginx/.htpasswd; # enable for ldap auth (requires ldap-server.conf in the server block) #include /config/nginx/ldap-location.conf; # enable for Authelia (requires authelia-server.conf in the server block) #include /config/nginx/authelia-location.conf; # enable for Authentik (requires authentik-server.conf in the server block) #include /config/nginx/authentik-location.conf; include /config/nginx/proxy.conf; include /config/nginx/resolver.conf; set $upstream_app transmission; set $upstream_port 9091; set $upstream_proto http; proxy_pass $upstream_proto://$upstream_app:$upstream_port; proxy_pass_header X-Transmission-Session-Id; } location ^~ /transmission/rpc { include /config/nginx/proxy.conf; include /config/nginx/resolver.conf; set $upstream_app transmission; set $upstream_port 9091; set $upstream_proto http; proxy_pass $upstream_proto://$upstream_app:$upstream_port; }