]> git.immae.eu Git - perso/Immae/Config/Nix.git/blobdiff - modules/private/websites/immae/production.nix
Handle immae.fr from eldiron
[perso/Immae/Config/Nix.git] / modules / private / websites / immae / production.nix
index f19823a5c0677436253e6859d10c653c49fc77a9..87bb848d7ddd044e578469158fa56890baa34b66 100644 (file)
@@ -1,33 +1,16 @@
-{ lib, pkgs, config, myconfig,  ... }:
+{ lib, pkgs, config,  ... }:
 let
   cfg = config.myServices.websites.immae.production;
-  varDir = "/var/lib/ftp/immae";
-  env = myconfig.env.websites.immae;
+  varDir = "/var/lib/buildbot/outputs/immaeEu";
+  coursDir = "/var/lib/buildbot/outputs/cours";
+  rechercheDir = "/var/lib/buildbot/outputs/recherche";
+  env = config.myEnv.websites.immae;
 in {
   options.myServices.websites.immae.production.enable = lib.mkEnableOption "enable Immae's website";
 
   config = lib.mkIf cfg.enable {
     services.webstats.sites = [ { name = "www.immae.eu"; } ];
 
-    services.phpfpm.pools.immae = {
-      listen = "/run/phpfpm/immae.sock";
-      extraConfig = ''
-        user = wwwrun
-        group = wwwrun
-        listen.owner = wwwrun
-        listen.group = wwwrun
-
-        pm = ondemand
-        pm.max_children = 5
-        pm.process_idle_timeout = 60
-
-        php_admin_value[open_basedir] = "${varDir}:/tmp"
-        '';
-      phpOptions = config.services.phpfpm.phpOptions + ''
-        extension=${pkgs.php}/lib/php/extensions/mysqli.so
-        '';
-    };
-    services.websites.env.production.modules = [ "proxy_fcgi" ];
     services.websites.env.production.vhostConfs.immae = {
       certName    = "eldiron";
       addToCerts  = true;
@@ -37,25 +20,42 @@ in {
         ''
         Use Stats www.immae.eu
 
-        <FilesMatch "\.php$">
-          SetHandler "proxy:unix:/run/phpfpm/immae.sock|fcgi://localhost"
-        </FilesMatch>
-
         <Directory ${varDir}>
-          DirectoryIndex index.php index.htm index.html
+          DirectoryIndex index.htm index.html
+          Options Indexes FollowSymLinks MultiViews Includes
+          AllowOverride All
+          Require all granted
+        </Directory>
+
+        Alias /cours ${coursDir}
+        <Directory ${coursDir}>
+          DirectoryIndex index.htm index.html
           Options Indexes FollowSymLinks MultiViews Includes
           AllowOverride All
           Require all granted
         </Directory>
 
-        <Location /blog_old/>
-          Use LDAPConnect
-          Require ldap-group cn=blog,cn=immae.eu,ou=services,dc=immae,dc=eu
-        </Location>
+        Alias /recherche ${rechercheDir}
+        <Directory ${rechercheDir}>
+          DirectoryIndex index.htm index.html
+          Options Indexes FollowSymLinks MultiViews Includes
+          AllowOverride All
+          Require all granted
+        </Directory>
         ''
       ];
     };
 
+    services.websites.env.production.vhostConfs.immaeFr = {
+      certName    = "eldiron";
+      addToCerts  = true;
+      hosts       = [ "www.immae.fr" "immae.fr" ];
+      root        = null;
+      extraConfig = [ ''
+        RedirectMatch 301 ^/((?!\.well-known.*$).*)$ https://www.immae.eu/chapeaux/
+        '' ];
+    };
+
     services.websites.env.production.vhostConfs.bouya = {
       certName    = "eldiron";
       addToCerts  = true;