diff --git a/nginx/nginx.conf b/nginx/nginx.conf index daee81f..76a77d3 100644 --- a/nginx/nginx.conf +++ b/nginx/nginx.conf @@ -2,7 +2,7 @@ worker_processes 8; worker_rlimit_nofile 8192; events { - worker_connections 32768; ## Default: 1024 + worker_connections 132768; ## Default: 1024 } http { @@ -12,19 +12,35 @@ http { upstream backend_GET { least_conn; - server localhost:4442; - server localhost:4443; - server localhost:4444; - server localhost:4445; - server localhost:4446; + server localhost:4441; + server localhost:4442; + #server localhost:4443; + #server localhost:4444; + #server localhost:4445; + #server localhost:4446; #server localhost:4447; #server localhost:4448; + + server 10.0.0.3:4441; + server 10.0.0.3:4442; + + #server 134.209.69.251:80 backup; + + server 116.203.32.253:80 backup; + #server 116.203.32.253:80; } upstream backend_POST { - server localhost:4441; + #server localhost:4441; + #server localhost:4442; + server 10.0.0.3:4441; + #server 10.0.0.3:4442; + } + upstream backend_db { + #server localhost:4441; + server 10.0.0.3:4441; } - proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=CACHEZONE:10m inactive=60m max_size=40m; + proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=CACHEZONE:10m inactive=60m max_size=400m; proxy_cache_key "$scheme$request_method$host$request_uri"; add_header X-Cache $upstream_cache_status; @@ -43,14 +59,16 @@ http { # internal; #} + #proxy_send_timeout 120s; + location @myerrordirective_500 { - return 502 "Internal Server Error"; + return 400 "Internal Server Error"; } location @myerrordirective_502 { - return 502 "Bad Gateway"; + return 400 "Bad Gateway"; } location @myerrordirective_504 { - return 502 "Gateway Timeout"; + return 400 "Gateway Timeout"; } @@ -62,17 +80,16 @@ http { return 301 https://sb.ltn.fi; } - location /invidious/ { - proxy_pass https://invidious.fdn.fr/; - } - location /test/ { proxy_pass http://localhost:4440/; #proxy_pass https://sbtest.etcinit.com/; } location /api/skipSegments { - proxy_pass http://backend_$request_method; + #return 200 "[]"; + proxy_pass http://backend_$request_method; + #proxy_cache CACHEZONE; + #proxy_cache_valid 2m; } location /api/getTopUsers { @@ -83,24 +100,43 @@ http { location /api/getTotalStats { proxy_pass http://backend_GET; - } + #return 200 ""; + } location /api/getVideoSponsorTimes { proxy_pass http://backend_GET; } - - location = /database.db { - alias /home/sbadmin/sponsor/databases/sponsorTimes.db; + + location /database { + proxy_pass http://backend_db; } - + + location = /database.db { + #return 404 "Sqlite database has been replaced with csv exports at https://sponsor.ajay.app/database. Sqlite exports might come back soon, but exported at longer intervals."; + #alias /home/sbadmin/sponsor/databases/sponsorTimes.db; + alias /home/sbadmin/test-db/database.db; + } + + location = /database/sponsorTimes.csv { + alias /home/sbadmin/sponsorTimes.csv; + } + + #location /api/voteOnSponsorTime { + # return 200 "Success"; + #} + + #location /api/viewedVideoSponsorTime { + # return 200 "Success"; + #} + location /api { proxy_pass http://backend_POST; } location / { - root /home/sbadmin/caddy/SponsorBlockSite/public-prod; - + root /home/sbadmin/SponsorBlockSite/public-prod; + ### CORS if ($request_method = 'OPTIONS') { add_header 'Access-Control-Allow-Origin' '*'; @@ -132,12 +168,15 @@ http { } - listen 443 ssl; # managed by Certbot + listen 443 default_server ssl; # managed by Certbot + #listen 80; ssl_certificate /etc/letsencrypt/live/sponsor.ajay.app/fullchain.pem; # managed by Certbot ssl_certificate_key /etc/letsencrypt/live/sponsor.ajay.app/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 + + }