about summary refs log tree commit diff
path: root/nixos
diff options
context:
space:
mode:
authorDmitry Kalinkin <dmitry.kalinkin@gmail.com>2019-03-22 14:08:33 -0400
committerGitHub <noreply@github.com>2019-03-22 14:08:33 -0400
commit0e57b98b2cf84c916b8e35e5639072bd1701791d (patch)
treef51e446c3c77d44ab02722b43e2ccb67c6ff1779 /nixos
parent3a3a6195050bb2b8fffdb5b7a9470a59f661bf7c (diff)
parentfee854ed01d1df73fd64cf42d228697341b4377f (diff)
downloadnixlib-0e57b98b2cf84c916b8e35e5639072bd1701791d.tar
nixlib-0e57b98b2cf84c916b8e35e5639072bd1701791d.tar.gz
nixlib-0e57b98b2cf84c916b8e35e5639072bd1701791d.tar.bz2
nixlib-0e57b98b2cf84c916b8e35e5639072bd1701791d.tar.lz
nixlib-0e57b98b2cf84c916b8e35e5639072bd1701791d.tar.xz
nixlib-0e57b98b2cf84c916b8e35e5639072bd1701791d.tar.zst
nixlib-0e57b98b2cf84c916b8e35e5639072bd1701791d.zip
Merge pull request #57596 from artemist/nginx-return
nixos/nginx: add return option to location
Diffstat (limited to 'nixos')
-rw-r--r--nixos/modules/services/web-servers/nginx/default.nix3
-rw-r--r--nixos/modules/services/web-servers/nginx/location-options.nix9
2 files changed, 11 insertions, 1 deletions
diff --git a/nixos/modules/services/web-servers/nginx/default.nix b/nixos/modules/services/web-servers/nginx/default.nix
index 1c9fbe048f84..bf9f0c21aedf 100644
--- a/nixos/modules/services/web-servers/nginx/default.nix
+++ b/nixos/modules/services/web-servers/nginx/default.nix
@@ -276,6 +276,7 @@ let
       ${optionalString (config.tryFiles != null) "try_files ${config.tryFiles};"}
       ${optionalString (config.root != null) "root ${config.root};"}
       ${optionalString (config.alias != null) "alias ${config.alias};"}
+      ${optionalString (config.return != null) "return ${config.return};"}
       ${config.extraConfig}
       ${optionalString (config.proxyPass != null && cfg.recommendedProxySettings) "include ${recommendedProxyConfig};"}
     }
@@ -373,7 +374,7 @@ in
       preStart =  mkOption {
         type = types.lines;
         default = ''
-          test -d ${cfg.stateDir}/logs || mkdir -m 750 -p ${cfg.stateDir}/logs  
+          test -d ${cfg.stateDir}/logs || mkdir -m 750 -p ${cfg.stateDir}/logs
           test `stat -c %a ${cfg.stateDir}` = "750" || chmod 750 ${cfg.stateDir}
           test `stat -c %a ${cfg.stateDir}/logs` = "750" || chmod 750 ${cfg.stateDir}/logs
           chown -R ${cfg.user}:${cfg.group} ${cfg.stateDir}
diff --git a/nixos/modules/services/web-servers/nginx/location-options.nix b/nixos/modules/services/web-servers/nginx/location-options.nix
index 9b44433d3845..aeb9b1dd79ef 100644
--- a/nixos/modules/services/web-servers/nginx/location-options.nix
+++ b/nixos/modules/services/web-servers/nginx/location-options.nix
@@ -64,6 +64,15 @@ with lib;
       '';
     };
 
+    return = mkOption {
+      type = types.nullOr types.str;
+      default = null;
+      example = "301 http://example.com$request_uri;";
+      description = ''
+        Adds a return directive, for e.g. redirections.
+      '';
+    };
+
     extraConfig = mkOption {
       type = types.lines;
       default = "";