Both sides previous revisionPrevious revisionNext revision | Previous revision |
servers:nginx:dokuwiki [2023/09/12 14:58] – openSUSE TW -> Fedora Server (partial) Sean Rhone | servers:nginx:dokuwiki [2024/02/07 16:37] (current) – [Server Block] Sean Rhone |
---|
====== Dependencies ====== | ====== Dependencies ====== |
| |
* :!: TODO | * PHP Modules: gd sodium zip zlib xml |
| |
sudo dnf install | sudo dnf install php-gd php-sodium php-pecl-zip php-xml |
| |
===== Old openSUSE ===== | |
| |
**** | |
| |
sudo zypper install php8-gd php8-sodium php8-zip php8-zlib | |
| |
====== Download Source ====== | ====== Download Source ====== |
| |
===== Server Block ====== | ===== Server Block ====== |
| |
* 2023/09/12: CSPs disabled; TODO: Re-figure out CSPs | |
| |
sudo -e '/etc/nginx/vhosts.d/wiki.conf' && sudo systemctl reload 'nginx' && sync | sudo -e '/etc/nginx/vhosts.d/wiki.conf' && sudo systemctl reload 'nginx' && sync |
client_max_body_size '10M'; | client_max_body_size '10M'; |
| |
# add_header Content-Security-Policy "default-src 'self'; script-src 'self' 'unsafe-inline'; style-src 'self' 'unsafe-inline'; img-src 'self' data:" always; | add_header Content-Security-Policy "default-src 'self'; script-src 'self' 'unsafe-inline'; style-src 'self' 'unsafe-inline'; img-src 'self' data:" always; |
| |
# access_log /var/log/nginx/wiki-access.log; | # access_log /var/log/nginx/wiki-access.log; |
| |
echo '-- --' | sudo tee '/var/www/wiki/conf/entities.local.conf' > '/dev/null' && sudo chown 'nginx':'nginx' '/var/www/wiki/conf/entities.local.conf' && sync | echo '-- --' | sudo tee '/var/www/wiki/conf/entities.local.conf' > '/dev/null' && sudo chown 'nginx':'nginx' '/var/www/wiki/conf/entities.local.conf' && sync |
| |
====== Logs ====== | |
| |
===== Enable ===== | |
| |
* Uncomment ''access_log'' and ''error_log'' | |
| |
sudo -e '/etc/nginx/vhosts.d/wiki.conf' && sudo systemctl reload 'nginx' && sync | |
| |
===== Logs ===== | |
| |
sudo -e '/var/log/nginx/wiki-access.log' | |
| |
sudo -e '/var/log/nginx/wiki-error.log' | |
| |
===== Disable ===== | |
| |
* Comment ''access_log'' and ''error_log'' | |
| |
sudo -e '/etc/nginx/vhosts.d/wiki.conf' && sudo systemctl reload 'nginx' && sudo rm '/var/log/nginx/wiki-access.log' '/var/log/nginx/wiki-error.log' && sync | |
| |
====== Services ====== | ====== Services ====== |
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/touch' '/var/www/wiki/conf/local.php' | ExecStartPost='/usr/bin/touch' '/var/www/wiki/conf/local.php' |
ExecStartPost='/usr/bin/sync'</code> | ExecStartPost='/usr/bin/sync' |
| |
| # End</code> |
| |
==== Timer ==== | ==== Timer ==== |
| |
* Every day at ''01:00:00'' | * Every day at ''00:30:00'' |
| |
sudo -e '/etc/systemd/system/wiki-up.timer' && sudo systemctl daemon-reload && sudo systemctl enable 'wiki-up.timer' --now && sudo systemctl start 'wiki-up' && sudo systemctl status 'wiki-up' -l | sudo -e '/etc/systemd/system/wiki-up.timer' && sudo systemctl daemon-reload && sudo systemctl enable 'wiki-up.timer' --now && sudo systemctl start 'wiki-up' && sudo systemctl status 'wiki-up' -l |
| |
[Timer] | [Timer] |
OnCalendar=*-*-* 01:00:00 | OnCalendar=*-*-* 00:30:00 |
Persistent=true | Persistent=true |
| |
[Install] | [Install] |
WantedBy=timers.target</code> | WantedBy=timers.target |
| |
| # End</code> |
| |
===== Maintenance ===== | ===== Maintenance ===== |
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='/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='/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='/usr/bin/sync' |
| |
| # End</code> |
| |
==== Timer ==== | ==== Timer ==== |
| |
* ''01'' day of every month at ''01:20:00'' | * ''01'' day of every month at ''01:00:00'' |
| |
sudo -e '/etc/systemd/system/wiki-m.timer' && sudo systemctl daemon-reload && sudo systemctl enable 'wiki-m.timer' --now | sudo -e '/etc/systemd/system/wiki-m.timer' && sudo systemctl daemon-reload && sudo systemctl enable 'wiki-m.timer' --now |
| |
[Timer] | [Timer] |
OnCalendar=*-*-01 01:20:00 | OnCalendar=*-*-01 01:00:00 |
Persistent=true | Persistent=true |
| |
[Install] | [Install] |
WantedBy=timers.target</code> | WantedBy=timers.target |
| |
| # End</code> |
| |
===== Backup ===== | ===== Backup ===== |
#ExecStart='/usr/bin/bash' -c '"/usr/bin/tar" -czf "/srv/ftp/nas1/espionage724/Servers/Scheduled 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='/usr/bin/bash' -c '"/usr/bin/tar" -czf "/srv/ftp/nas1/espionage724/Servers/Scheduled 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='/usr/bin/bash' -c '"/usr/bin/tar" -czf "/srv/ftp/nas2/Servers/Scheduled 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='/usr/bin/bash' -c '"/usr/bin/tar" -czf "/srv/ftp/nas2/Servers/Scheduled 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='/usr/bin/sync' |
| |
| # End</code> |
| |
==== Timer ==== | ==== Timer ==== |
| |
* Every day at ''01:50:00'' | * Every day at ''01:30:00'' |
| |
sudo -e '/etc/systemd/system/wiki-fb.timer' && sudo systemctl daemon-reload && sudo systemctl enable 'wiki-fb.timer' --now && sudo systemctl start 'wiki-fb' && sudo systemctl status 'wiki-fb' -l | sudo -e '/etc/systemd/system/wiki-fb.timer' && sudo systemctl daemon-reload && sudo systemctl enable 'wiki-fb.timer' --now && sudo systemctl start 'wiki-fb' && sudo systemctl status 'wiki-fb' -l |
| |
[Timer] | [Timer] |
OnCalendar=*-*-* 01:50:00 | OnCalendar=*-*-* 01:30:00 |
Persistent=true | Persistent=true |
| |
[Install] | [Install] |
WantedBy=timers.target</code> | WantedBy=timers.target |
| |
| # End</code> |
| |
====== Backup ====== | ====== Backup ====== |
**** | **** |
| |
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 semanage fcontext --add --type 'httpd_sys_rw_content_t' '/var/www/wiki(/.*)?' && sudo restorecon -F -I -R '/var/www/wiki' && 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 restorecon -F -I -R '/var/www/wiki' && sudo chown -R 'nginx':'nginx' '/var/www/wiki' && cd ~ && sync |
| |
==== Start nginx ==== | ==== Start nginx ==== |