Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision |
servers:nginx:dokuwiki [2019/10/23 20:49] – Sean Rhone | servers:nginx:dokuwiki [2020/04/24 10:09] – 20.04 Sean Rhone |
---|
===== Prerequisites ===== | ===== Prerequisites ===== |
| |
* [[distros:ubuntu_server|Ubuntu Server]] | * [[distros:ubuntu_server|Ubuntu Server]] ((Last tested on 20.04)) |
* [[servers:nginx_php_php-fpm|nginx + PHP + PHP-FPM]] | * [[servers:nginx_php_php-fpm|nginx + PHP + PHP-FPM]] |
* [[servers:nginx:lets_encrypt|Let's Encrypt]] | * [[servers:nginx:lets_encrypt|Let's Encrypt]] |
===== PHP-FPM Socket ===== | ===== PHP-FPM Socket ===== |
| |
sudo -e '/etc/php/7.2/fpm/pool.d/wiki.conf' && sudo systemctl restart 'php7.2-fpm' | sudo -e '/etc/php/7.4/fpm/pool.d/wiki.conf' && sudo systemctl restart 'php7.4-fpm' |
| |
<code> | <code> |
| |
php_value[session.save_handler] = "files" | php_value[session.save_handler] = "files" |
php_value[session.save_path] = "/var/lib/php/session" | php_value[session.save_path] = "/var/lib/php/sessions" |
php_value[soap.wsdl_cache_dir] = "/var/lib/php/wsdlcache" | php_value[soap.wsdl_cache_dir] = "/var/lib/php/wsdlcache" |
php_value[opcache.file_cache] = "/var/lib/php/opcache"</code> | php_value[opcache.file_cache] = "/var/lib/php/opcache"</code> |
<code> | <code> |
[Service] | [Service] |
User=nginx | User=www-data |
Group=nginx | Group=www-data |
Type=oneshot | Type=oneshot |
ExecStart='/usr/bin/git' -C '/var/www/wiki' pull origin 'master' | ExecStart='/usr/bin/git' -C '/var/www/wiki' pull origin 'master' |
ExecStartPost='/usr/bin/sync'</code> | ExecStartPost='/bin/sync'</code> |
| |
==== Timer ==== | ==== Timer ==== |
| |
==== Service ==== | ==== Service ==== |
| |
| * :!: The commented ''ExecStart'' would remove page edits older than 90 days |
| |
sudo -e '/etc/systemd/system/wiki-m.service' | sudo -e '/etc/systemd/system/wiki-m.service' |
<code> | <code> |
[Service] | [Service] |
User=nginx | User=www-data |
Group=nginx | Group=www-data |
Type=oneshot | Type=oneshot |
WorkingDirectory=/var/www/wiki | WorkingDirectory=/var/www/wiki |
ExecStart='/usr/bin/git' -C '/var/www/wiki' gc --aggressive --prune='all' | ExecStart='/usr/bin/git' -C '/var/www/wiki' gc --aggressive --prune='all' |
ExecStart='/usr/bin/git' -C '/var/www/wiki' fsck --full --strict | ExecStart='/usr/bin/git' -C '/var/www/wiki' fsck --full --strict |
ExecStart='/usr/bin/bash' -c "find '/var/www/wiki/data'/{attic,cache,locks,media_attic}/ -type 'f' -mtime +'90' -delete" | #ExecStart='/bin/bash' -c "find '/var/www/wiki/data'/{attic,cache,locks,media_attic}/ -type 'f' -mtime +'90' -delete" |
ExecStart='/usr/bin/bash' -c "find '/var/www/wiki/data'/{attic,cache,index,locks,media,media_attic,media_meta,meta,pages,tmp}/ -mindepth '1' -type 'd' -empty -delete" | ExecStart='/bin/bash' -c "find '/var/www/wiki/data'/{attic,cache,index,locks,media,media_attic,media_meta,meta,pages,tmp}/ -mindepth '1' -type 'd' -empty -delete" |
ExecStart='/usr/bin/php' '/var/www/wiki/bin/indexer.php' --clear | ExecStart='/usr/bin/php' '/var/www/wiki/bin/indexer.php' --clear |
ExecStartPost='/usr/bin/sync'</code> | ExecStartPost='/bin/sync'</code> |
| |
==== Timer ==== | ==== Timer ==== |
Type=oneshot | Type=oneshot |
WorkingDirectory=/var/www/wiki | WorkingDirectory=/var/www/wiki |
ExecStart='/usr/bin/bash' -c '"/usr/bin/tar" -cvzf "/home/CHANGEME/backups/dokuwiki-files-auto-"$$(date +%%Y-%%m-%%d)".tar.gz" "data/pages" "data/meta" "data/media" "data/media_meta" "data/attic" "data/media_attic" "conf"' | ExecStart='/bin/bash' -c '"/bin/tar" -cvzf "/home/CHANGEME/backups/dokuwiki-files-auto-"$$(date +%%Y-%%m-%%d)".tar.gz" "data/pages" "data/meta" "data/media" "data/media_meta" "data/attic" "data/media_attic" "conf"' |
ExecStartPost='/usr/bin/sync'</code> | ExecStartPost='/bin/sync'</code> |
| |
==== Timer ==== | ==== Timer ==== |
**** | **** |
| |
cd '/var/www/wiki' && sudo tar -xvzf ~/'dokuwiki-files-'*'.tar.gz' 'data/pages' 'data/meta' 'data/media' 'data/media_meta' 'data/attic' 'data/media_attic' 'conf' && sudo chown -R 'nginx':'nginx' '/var/www/wiki' && cd ~ && sync | cd '/var/www/wiki' && sudo tar -xvzf ~/'dokuwiki-files-'*'.tar.gz' 'data/pages' 'data/meta' 'data/media' 'data/media_meta' 'data/attic' 'data/media_attic' 'conf' && sudo chown -R 'www-data':'www-data' '/var/www/wiki' && cd ~ && sync |
| |
==== SELinux ==== | |
| |
sudo semanage fcontext --deleteall "/var/www/wiki(/.*)?" | |
| |
sudo semanage fcontext --add --type 'httpd_sys_rw_content_t' "/var/www/wiki(/.*)?" | |
| |
sudo restorecon -R -v '/var/www/wiki' | |
| |
==== Start nginx ==== | ==== Start nginx ==== |