fix(nginx): proxied var defaults

This commit is contained in:
arcnmx 2024-08-11 13:36:59 -07:00
parent 914676f884
commit bd78e75619
2 changed files with 16 additions and 0 deletions

View file

@ -9,6 +9,10 @@ let
set $proxied_cf on; set $proxied_cf on;
set $proxied_host_cf ${host}; set $proxied_host_cf ${host};
''; '';
xNotCloudflared = ''
set $proxied_cf "";
set $proxied_host_cf "";
'';
xHeadersProxied = {xvars}: '' xHeadersProxied = {xvars}: ''
${xvars.init "forwarded_for" "$proxy_add_x_forwarded_for"} ${xvars.init "forwarded_for" "$proxy_add_x_forwarded_for"}
if ($http_x_forwarded_proto) { if ($http_x_forwarded_proto) {
@ -104,6 +108,9 @@ let
(mkIf (cfg.enable == "cloudflared" && virtualHost.proxied.enable != "cloudflared") ( (mkIf (cfg.enable == "cloudflared" && virtualHost.proxied.enable != "cloudflared") (
mkJustBefore (xCloudflared {inherit virtualHost;}) mkJustBefore (xCloudflared {inherit virtualHost;})
)) ))
(mkIf (cfg.enabled && emitVars && cfg.enable != "cloudflared") (
mkJustBefore xNotCloudflared
))
(mkIf (xInit && emitVars) ( (mkIf (xInit && emitVars) (
mkJustBefore (xHeadersProxied {inherit xvars;}) mkJustBefore (xHeadersProxied {inherit xvars;})
)) ))
@ -212,6 +219,9 @@ let
(mkIf (cfg.enable == "cloudflared") ( (mkIf (cfg.enable == "cloudflared") (
mkOrder orderJustBefore (xCloudflared {virtualHost = config;}) mkOrder orderJustBefore (xCloudflared {virtualHost = config;})
)) ))
(mkIf (cfg.enabled && cfg.enable != "cloudflared") (
mkOrder orderJustBefore xNotCloudflared
))
(mkIf (xInit && cfg.enabled && config.xvars.enable) ( (mkIf (xInit && cfg.enabled && config.xvars.enable) (
mkOrder (orderJustBefore + 25) (xHeadersProxied {inherit xvars;}) mkOrder (orderJustBefore + 25) (xHeadersProxied {inherit xvars;})
)) ))

View file

@ -72,6 +72,12 @@ in {
enable = true; enable = true;
user = "logistics"; user = "logistics";
}; };
services.nginx = {
commonHttpConfig = ''
proxy_headers_hash_max_size 1024;
proxy_headers_hash_bucket_size 128;
'';
};
sops = { sops = {
defaultSopsFile = ./secrets.yaml; defaultSopsFile = ./secrets.yaml;