From 544da1ba50d9cbf51a18ca0abf1db66b3baa7460 Mon Sep 17 00:00:00 2001 From: Andrew Opalach Date: Fri, 17 Oct 2025 12:22:00 -0400 Subject: Gentoo desktop --- hosts/station/nginx/akoncity | 82 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 82 insertions(+) create mode 100644 hosts/station/nginx/akoncity (limited to 'hosts/station/nginx') diff --git a/hosts/station/nginx/akoncity b/hosts/station/nginx/akoncity new file mode 100644 index 0000000..0f33432 --- /dev/null +++ b/hosts/station/nginx/akoncity @@ -0,0 +1,82 @@ +limit_req_zone $binary_remote_addr zone=main:1m rate=10r/s; # This is completely untuned. + +server { + error_log syslog:server=unix:/dev/log; + access_log syslog:server=unix:/dev/log; + + server_name akon.city www.akon.city; + + root /var/www/akoncity; + index index.html; + + location / { + limit_req zone=main burst=20 nodelay; + limit_req_log_level error; + try_files $uri $uri/ =404; + } + + listen [::]:443 ssl ipv6only=on; # managed by Certbot + listen 443 ssl; # managed by Certbot + ssl_certificate /etc/letsencrypt/live/akon.city/fullchain.pem; # managed by Certbot + ssl_certificate_key /etc/letsencrypt/live/akon.city/privkey.pem; # managed by Certbot + include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot + ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot +} + +server { + error_log syslog:server=unix:/dev/log; + access_log syslog:server=unix:/dev/log; + + server_name git.akon.city; + + root /var/www/htdocs/cgit; + try_files $uri @cgit; + + location ~ ^.*(/.+|/.+\.git)/(HEAD|info/refs|objects/info/.*|git-(upload|receive)-pack)$ { + client_max_body_size 0; + include fastcgi_params; + fastcgi_param SCRIPT_FILENAME /usr/lib/git-core/git-http-backend; + fastcgi_param GIT_HTTP_EXPORT_ALL "1"; + fastcgi_param GIT_PROJECT_ROOT /var/git; + fastcgi_param PATH_INFO $uri; + fastcgi_param REQUEST_METHOD $request_method; + fastcgi_param QUERY_STRING $query_string; + fastcgi_pass unix:/var/run/fcgiwrap.socket; + } + + location @cgit { + index cgit.cgi; + include fastcgi_params; + fastcgi_param DOCUMENT_ROOT $document_root; + fastcgi_param SCRIPT_FILENAME $document_root/cgit.cgi; + fastcgi_param PATH_INFO $uri; + fastcgi_param QUERY_STRING $args; + fastcgi_param HTTP_HOST $server_name; + fastcgi_pass unix:/var/run/fcgiwrap.socket; + } + + listen [::]:443 ssl; + listen 443 ssl; + ssl_certificate /etc/letsencrypt/live/git.akon.city/fullchain.pem; + ssl_certificate_key /etc/letsencrypt/live/git.akon.city/privkey.pem; +} + +server { + if ($host = www.akon.city) { + return 301 https://$host$request_uri; + } # managed by Certbot + + if ($host = akon.city) { + return 301 https://$host$request_uri; + } # managed by Certbot + + if ($host = git.akon.city) { + return 301 https://$host$request_uri; + } + + listen 80; + listen [::]:80; + + server_name akon.city www.akon.city; + return 404; # managed by Certbot +} -- cgit v1.2.3-101-g0448