]>
Commit | Line | Data |
---|---|---|
dcac3ec7 | 1 | { lib, config, pkgs, ... }: |
ab97f6e7 | 2 | let |
d3452fc5 IB |
3 | cfg = config.myServices.websites.denise.evariste; |
4 | nsiVarDir = "/var/lib/ftp/denise/nsievariste"; | |
5 | stmgVarDir = "/var/lib/ftp/denise/stmgevariste"; | |
6 | apacheUser = config.services.httpd.Prod.user; | |
7 | apacheGroup = config.services.httpd.Prod.group; | |
ab97f6e7 | 8 | in { |
d3452fc5 | 9 | options.myServices.websites.denise.evariste.enable = lib.mkEnableOption "enable NSI/STMG Evariste website"; |
ab97f6e7 IB |
10 | |
11 | config = lib.mkIf cfg.enable { | |
12 | services.webstats.sites = [ | |
13 | { name = "nsievariste.immae.eu"; } | |
14 | { name = "stmgevariste.immae.eu"; } | |
15 | ]; | |
16 | ||
17 | services.websites.env.production.modules = [ "proxy_fcgi" ]; | |
d3452fc5 IB |
18 | services.phpfpm.pools.denise_nsievariste = { |
19 | user = apacheUser; | |
20 | group = apacheGroup; | |
5400b9b6 | 21 | settings = { |
d3452fc5 IB |
22 | "listen.owner" = apacheUser; |
23 | "listen.group" = apacheGroup; | |
ab97f6e7 | 24 | |
73f88539 IB |
25 | "pm" = "dynamic"; |
26 | "pm.max_children" = "20"; | |
27 | "pm.start_servers" = "2"; | |
28 | "pm.min_spare_servers" = "1"; | |
29 | "pm.max_spare_servers" = "3"; | |
ab97f6e7 | 30 | |
bbea22c0 IB |
31 | "php_admin_value[session.save_handler]" = "redis"; |
32 | "php_admin_value[session.save_path]" = "'unix:///run/redis-php-sessions/redis.sock?persistent=1&prefix=Denise:NsiEvariste:'"; | |
33 | "php_admin_value[open_basedir]" = "${nsiVarDir}:/tmp"; | |
5400b9b6 | 34 | }; |
bbea22c0 | 35 | phpPackage = pkgs.php72.withExtensions({ enabled, all }: enabled ++ [all.redis]); |
ab97f6e7 | 36 | }; |
d3452fc5 IB |
37 | services.websites.env.production.vhostConfs.denise_nsievariste = { |
38 | certName = "denise_evariste"; | |
ab97f6e7 | 39 | addToCerts = true; |
d3452fc5 | 40 | certMainHost = "nsievariste.immae.eu"; |
ab97f6e7 IB |
41 | hosts = ["nsievariste.immae.eu" ]; |
42 | root = nsiVarDir; | |
43 | extraConfig = [ | |
44 | '' | |
45 | Use Stats nsievariste.immae.eu | |
46 | ||
47 | <FilesMatch "\.php$"> | |
d3452fc5 | 48 | SetHandler "proxy:unix:${config.services.phpfpm.pools.denise_nsievariste.socket}|fcgi://localhost" |
ab97f6e7 IB |
49 | </FilesMatch> |
50 | ||
51 | <Directory ${nsiVarDir}> | |
52 | DirectoryIndex index.php index.htm index.html | |
53 | Options Indexes FollowSymLinks MultiViews Includes | |
54 | AllowOverride None | |
55 | Require all granted | |
56 | </Directory> | |
57 | '' | |
58 | ]; | |
59 | }; | |
60 | ||
d3452fc5 IB |
61 | services.phpfpm.pools.denise_stmgevariste = { |
62 | user = apacheUser; | |
63 | group = apacheGroup; | |
5400b9b6 | 64 | settings = { |
d3452fc5 IB |
65 | "listen.owner" = apacheUser; |
66 | "listen.group" = apacheGroup; | |
ab97f6e7 | 67 | |
73f88539 IB |
68 | "pm" = "dynamic"; |
69 | "pm.max_children" = "20"; | |
70 | "pm.start_servers" = "2"; | |
71 | "pm.min_spare_servers" = "1"; | |
72 | "pm.max_spare_servers" = "3"; | |
ab97f6e7 | 73 | |
bbea22c0 IB |
74 | "php_admin_value[session.save_handler]" = "redis"; |
75 | "php_admin_value[session.save_path]" = "'unix:///run/redis-php-sessions/redis.sock?persistent=1&prefix=Denise:StmgEvariste:'"; | |
76 | "php_admin_value[open_basedir]" = "${stmgVarDir}:/tmp"; | |
5400b9b6 | 77 | }; |
bbea22c0 | 78 | phpPackage = pkgs.php72.withExtensions({ enabled, all }: enabled ++ [all.redis]); |
ab97f6e7 | 79 | }; |
d3452fc5 IB |
80 | services.websites.env.production.vhostConfs.denise_stmgevariste = { |
81 | certName = "denise_evariste"; | |
ab97f6e7 IB |
82 | addToCerts = true; |
83 | hosts = ["stmgevariste.immae.eu" ]; | |
84 | root = stmgVarDir; | |
85 | extraConfig = [ | |
86 | '' | |
87 | Use Stats stmgevariste.immae.eu | |
88 | ||
89 | <FilesMatch "\.php$"> | |
d3452fc5 | 90 | SetHandler "proxy:unix:${config.services.phpfpm.pools.denise_stmgevariste.socket}|fcgi://localhost" |
ab97f6e7 IB |
91 | </FilesMatch> |
92 | ||
93 | <Directory ${stmgVarDir}> | |
94 | DirectoryIndex index.php index.htm index.html | |
95 | Options Indexes FollowSymLinks MultiViews Includes | |
96 | AllowOverride None | |
97 | Require all granted | |
98 | </Directory> | |
99 | '' | |
100 | ]; | |
101 | }; | |
102 | }; | |
103 | } |