]> git.immae.eu Git - perso/Immae/Config/Nix.git/blame - modules/private/websites/tools/tools/phpbb.nix
Remove webappdirs
[perso/Immae/Config/Nix.git] / modules / private / websites / tools / tools / phpbb.nix
CommitLineData
a8ef1adb
IB
1{ lib, phpbb, gnused }:
2rec {
3 backups = {
4 rootDir = varDir;
5 };
6 varDir = "/var/lib/phpbb";
7 activationScript = {
8 deps = [ "wrappers" ];
9 text = ''
10 if [ ! -d ${varDir} ]; then
11 install -m 0755 -o ${apache.user} -g ${apache.user} -d ${varDir}
12 cp -a ${phpbb}/vars/* ${varDir}
13 chown -R ${apache.user}:${apache.user} ${varDir}
14 fi
15 install -m 0750 -o ${apache.user} -g ${apache.group} -d ${varDir}/phpSessions
16 '';
17 };
18 webRoot = phpbb;
19 apache = rec {
20 user = "wwwrun";
21 group = "wwwrun";
22 modules = [ "proxy_fcgi" ];
750fe5a4 23 root = webRoot;
a8ef1adb
IB
24 vhostConf = socket: ''
25 Alias /forum "${root}"
26 <Directory "${root}">
27 DirectoryIndex index.php
28 <FilesMatch "\.php$">
29 SetHandler "proxy:unix:${socket}|fcgi://localhost"
30 </FilesMatch>
31
32 AllowOverride All
33 Options FollowSymlinks
34 Require all granted
35 </Directory>
36 # add instal to the list after install
37 <LocationMatch "^/(cache|files|install|store)>
38 Require all denied
39 </LocationMatch>
40 '';
41 };
42 phpFpm = rec {
43 serviceDeps = [ "postgresql.service" ];
44 basedir = builtins.concatStringsSep ":" [ "/run/wrappers/bin/sendmail" phpbb varDir ];
45 pool = {
46 "listen.owner" = apache.user;
47 "listen.group" = apache.group;
48 "pm" = "ondemand";
49 "pm.max_children" = "60";
50 "pm.process_idle_timeout" = "60";
51
52 # Needed to avoid clashes in browser cookies (same domain)
53 "php_value[session.name]" = "PhpBBPHPSESSID";
54 "php_admin_value[open_basedir]" = "${basedir}:/tmp";
55 "php_admin_value[session.save_path]" = "${varDir}/phpSessions";
56 };
57 };
58}