June
abc738c9c2
All checks were successful
/ Ansible Lint (push) Successful in 1m33s
Because of how Ansible local relative search paths work, the global "files" and "templates" directories need to be next to the playbooks. However its not intuitive to look into the playbooks directory to find the files and templates for a host. Therefore flatten the playbooks directory to get rid of this confusing structure. Also see: https://docs.ansible.com/ansible/latest/playbook_guide/playbook_pathing.html#resolving-local-relative-paths
85 lines
3.1 KiB
Text
85 lines
3.1 KiB
Text
# partly generated 2022-01-08, Mozilla Guideline v5.6, nginx 1.17.7, OpenSSL 1.1.1k, intermediate configuration
|
|
# https://ssl-config.mozilla.org/#server=nginx&version=1.17.7&config=intermediate&openssl=1.1.1k&guideline=5.6
|
|
server {
|
|
# Listen on a custom port for the proxy protocol.
|
|
listen 8443 ssl http2 proxy_protocol;
|
|
# Make use of the ngx_http_realip_module to set the $remote_addr and
|
|
# $remote_port to the client address and client port, when using proxy
|
|
# protocol.
|
|
# First set our proxy protocol proxy as trusted.
|
|
set_real_ip_from 172.31.17.140;
|
|
# Then tell the realip_module to get the addreses from the proxy protocol
|
|
# header.
|
|
real_ip_header proxy_protocol;
|
|
|
|
server_name wiki.hamburg.ccc.de;
|
|
|
|
ssl_certificate /etc/letsencrypt/live/wiki.hamburg.ccc.de/fullchain.pem;
|
|
ssl_certificate_key /etc/letsencrypt/live/wiki.hamburg.ccc.de/privkey.pem;
|
|
# verify chain of trust of OCSP response using Root CA and Intermediate certs
|
|
ssl_trusted_certificate /etc/letsencrypt/live/wiki.hamburg.ccc.de/chain.pem;
|
|
|
|
# HSTS (ngx_http_headers_module is required) (63072000 seconds)
|
|
add_header Strict-Transport-Security "max-age=63072000" always;
|
|
|
|
# Maximum file upload size is 20MB - change accordingly if needed
|
|
# See: https://www.dokuwiki.org/faq:uploadsize
|
|
client_max_body_size 20M;
|
|
client_body_buffer_size 128k;
|
|
|
|
proxy_set_header Host $host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
# This is https in any case.
|
|
proxy_set_header X-Forwarded-Proto https;
|
|
|
|
root /var/www/dokuwiki;
|
|
index doku.php;
|
|
|
|
#Remember to comment the below out when you're installing, and uncomment it when done.
|
|
location ~ /(conf/|bin/|inc/|vendor/|install.php) { deny all; }
|
|
|
|
#Support for X-Accel-Redirect
|
|
location ~ ^/data/ { internal ; }
|
|
|
|
location ~ ^/lib.*\.(js|css|gif|png|ico|jpg|jpeg)$ {
|
|
expires 365d;
|
|
}
|
|
|
|
location / { try_files $uri $uri/ @dokuwiki; }
|
|
|
|
location @dokuwiki {
|
|
# rewrites "doku.php/" out of the URLs if you set the userwrite setting to .htaccess in dokuwiki config page
|
|
rewrite ^/_media/(.*) /lib/exe/fetch.php?media=$1 last;
|
|
rewrite ^/_detail/(.*) /lib/exe/detail.php?media=$1 last;
|
|
rewrite ^/_export/([^/]+)/(.*) /doku.php?do=export_$1&id=$2 last;
|
|
rewrite ^/(.*) /doku.php?id=$1&$args last;
|
|
}
|
|
|
|
location ~ \.php$ {
|
|
try_files $uri $uri/ /doku.php;
|
|
include fastcgi_params;
|
|
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
|
fastcgi_param REDIRECT_STATUS 200;
|
|
fastcgi_pass unix:/var/run/php/php-fpm-dokuwiki.sock;
|
|
}
|
|
|
|
|
|
### Wiki-Migration redirects:
|
|
# Redirect MediaWikis Main_Page.
|
|
location = /Main_Page {
|
|
return 302 https://$host;
|
|
}
|
|
|
|
location /ChaosVPN {
|
|
return 302 https://oldwiki.hamburg.ccc.de$request_uri;
|
|
}
|
|
|
|
location ~ /EH(07|09|11) {
|
|
return 302 https://oldwiki.hamburg.ccc.de$request_uri;
|
|
}
|
|
|
|
location /Easter {
|
|
return 302 https://oldwiki.hamburg.ccc.de$request_uri;
|
|
}
|
|
}
|