Refactor Nginx configuration for Seerr application

This commit is contained in:
Alexandre
2026-02-19 15:36:13 +01:00
committed by GitHub
parent a8215dc011
commit c708c03e2d

View File

@@ -8,12 +8,11 @@ server {
client_max_body_size 0;
# Based on https://github.com/seerr-team/seerr/blob/develop/docs/extending-seerr/reverse-proxy.mdx
location ^~ /seerr {
set $app '%%ingress_entry%%/seerr';
location ^~ / {
set $app '%%ingress_entry%%';
# Remove /seerr path to pass to the app
rewrite ^%%ingress_entry%%/seerr/?(.*)$ /$1 break;
proxy_pass http://127.0.0.1:5055; # NO TRAILING SLASH
rewrite ^%%ingress_entry%%/?(.*)$ /$1 break;
proxy_pass http://127.0.0.1:5055;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
@@ -29,27 +28,27 @@ server {
add_header 'Referrer-Policy' 'no-referrer';
# Redirect location headers
proxy_redirect ^ /$app;
proxy_redirect /setup /$app/setup;
proxy_redirect /login /$app/login;
proxy_redirect ^ $app;
proxy_redirect /setup $app/setup;
proxy_redirect /login $app/login;
# Sub filters to replace hardcoded paths
sub_filter_once off;
sub_filter_types *;
sub_filter 'href="/"' 'href="/$app"';
sub_filter 'href="/login"' 'href="/$app/login"';
sub_filter 'href:"/"' 'href:"/$app"';
sub_filter '\/_next' '\/$app\/_next';
sub_filter '/_next' '/$app/_next';
sub_filter '/api/v1' '/$app/api/v1';
sub_filter '/login/plex/loading' '/$app/login/plex/loading';
sub_filter '/images/' '/$app/images/';
sub_filter '/imageproxy/' '/$app/imageproxy/';
sub_filter '/avatarproxy/' '/$app/avatarproxy/';
sub_filter '/android-' '/$app/android-';
sub_filter '/apple-' '/$app/apple-';
sub_filter '/favicon' '/$app/favicon';
sub_filter '/logo_' '/$app/logo_';
sub_filter '/site.webmanifest' '/$app/site.webmanifest';
sub_filter 'href="/"' 'href="$app"';
sub_filter 'href="/login"' 'href="$app/login"';
sub_filter 'href:"/"' 'href:"$app"';
sub_filter '\/_next' '\$app\/_next';
sub_filter '/_next' '$app/_next';
sub_filter '/api/v1' '$app/api/v1';
sub_filter '/login/plex/loading' '$app/login/plex/loading';
sub_filter '/images/' '$app/images/';
sub_filter '/imageproxy/' '$app/imageproxy/';
sub_filter '/avatarproxy/' '$app/avatarproxy/';
sub_filter '/android-' '$app/android-';
sub_filter '/apple-' '$app/apple-';
sub_filter '/favicon' '$app/favicon';
sub_filter '/logo_' '$app/logo_';
sub_filter '/site.webmanifest' '$app/site.webmanifest';
}
}