cfg = config.myServices.websites.chloe.new;
ftpRoot = "/var/lib/chloe_new";
webRoot = "${ftpRoot}/wordpress";
- sessionDir = "${ftpRoot}/sessions";
in {
options.myServices.websites.chloe.new.enable = lib.mkEnableOption "enable Chloe's new website in integration";
"listen.group" = config.services.httpd.Inte.group;
"php_admin_value[open_basedir]" = builtins.concatStringsSep ":" [
webRoot
- sessionDir
"/tmp"
];
- "php_admin_value[session.save_path]" = sessionDir;
+ "php_admin_value[session.save_handler]" = "redis";
+ "php_admin_value[session.save_path]" = "'unix:///run/redis-php-sessions/redis.sock?persistent=1&prefix=Chloe:NewIntegration:'";
"php_admin_value[upload_max_filesize]" = "20M";
"php_admin_value[post_max_size]" = "20M";
#"php_admin_flag[log_errors]" = "on";
"pm.max_children" = "5";
"pm.process_idle_timeout" = "60";
};
- phpPackage = pkgs.php74;
+ phpPackage = pkgs.php74.withExtensions({ enabled, all }: enabled ++ [all.redis]);
};
system.activationScripts.chloe_new_integration = {
deps = ["users"];
text = ''
- install -m 0700 -o ${config.services.httpd.Inte.user} -g ${config.services.httpd.Inte.group} -d ${ftpRoot} ${sessionDir}
+ install -m 0700 -o ${config.services.httpd.Inte.user} -g ${config.services.httpd.Inte.group} -d ${ftpRoot}
'';
};