42 lines
1.0 KiB
Nix
42 lines
1.0 KiB
Nix
{ pkgs, ... }:
|
|
|
|
{
|
|
|
|
systemd.tmpfiles.rules = [
|
|
"d /var/cache/nginx/nurausstieg - nginx nginx - -"
|
|
];
|
|
|
|
services.nginx = {
|
|
commonHttpConfig = ''
|
|
proxy_cache_path /var/cache/nginx/nurausstieg levels=1:2 use_temp_path=off keys_zone=nurausstieg:1m max_size=10m;
|
|
'';
|
|
|
|
virtualHosts."nurausstieg.clerie.de" = {
|
|
enableACME = true;
|
|
forceSSL = true;
|
|
locations."/" = {
|
|
proxyPass = "http://[::1]:44384";
|
|
extraConfig = ''
|
|
proxy_cache nurausstieg;
|
|
# Ignore upstream cache hints
|
|
proxy_ignore_headers Cache-Control;
|
|
# Force cache 200 and 500 responses for one minute
|
|
proxy_cache_valid 200 500 1m;
|
|
# Only do a single fetch for missing entries and let other sessions wait
|
|
proxy_cache_lock on;
|
|
'';
|
|
};
|
|
};
|
|
};
|
|
|
|
systemd.services.nurausstieg = {
|
|
wantedBy = [ "multi-user.target" ];
|
|
serviceConfig = {
|
|
DynamicUser = true;
|
|
};
|
|
path = with pkgs; [ nurausstieg ];
|
|
script = "nurausstieg --listen [::1]:44384";
|
|
};
|
|
|
|
}
|