1 { webapps, php74, myPhpPackages, lib, forcePhpSocket ? null }:
3 webRoot = webapps.adminer;
7 phpPackage = php74.withExtensions ({ enabled, all }: (lib.remove all.mysqli enabled) ++ [myPhpPackages.mysqli_pam all.redis]);
9 "listen.owner" = apache.user;
10 "listen.group" = apache.group;
12 "pm.max_children" = "5";
13 "pm.process_idle_timeout" = "60";
14 #"php_admin_flag[log_errors]" = "on";
15 # Needed to avoid clashes in browser cookies (same domain)
16 "php_value[session.name]" = "AdminerPHPSESSID";
17 "php_admin_value[open_basedir]" = "${webRoot}:/tmp";
18 "php_admin_value[session.save_handler]" = "redis";
19 "php_admin_value[session.save_path]" = "'unix:///run/redis-php-sessions/redis.sock?persistent=1&prefix=Tools:Adminer:'";
25 modules = [ "proxy_fcgi" ];
27 vhostConf = socket: ''
28 Alias /adminer ${webRoot}
29 <Directory ${webRoot}>
30 DirectoryIndex index.php
32 SetHandler "proxy:unix:${if forcePhpSocket != null then forcePhpSocket else socket}|fcgi://localhost"
36 Require ldap-group cn=users,cn=mysql,cn=pam,ou=services,dc=immae,dc=eu
37 Require ldap-group cn=users,cn=postgresql,cn=pam,ou=services,dc=immae,dc=eu