Reckless_Satoshi a069f98a1a init
2023-09-29 05:10:16 -07:00

58 lines
1.7 KiB
Plaintext

limit_req_zone $binary_remote_addr zone=tenpersec:10m rate=100r/s;
# first we declare our upstream server, which is our Gunicorn application
upstream robosats_gunicorn_rest {
# docker will automatically resolve this to the correct address
# because we use the same name as the service: "robosats"
server localhost:8000;
}
upstream robosats_daphne_websocket {
# docker will automatically resolve this to the correct address
# because we use the same name as the service: "robosats"
server localhost:9000;
}
# now we declare our main server
server {
listen 80;
server_name robosats.com;
large_client_header_buffers 4 64k;
location /static {
alias /usr/src/static;
}
# Tor to web providers (identification files)
location /.well-known {
alias /usr/src/.well-known;
}
location / {
# requests are passed to Gunicorn
proxy_pass http://robosats_gunicorn_rest;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
proxy_redirect off;
# Replace with the onion hidden service of your coordinator
add_header Onion-Location http://robosats6tkf3eva7x2voqso3a5wcorsnw34jveyxfqi2fu7oyheasid.onion$request_uri;
limit_req zone=tenpersec burst=10;
}
location /ws/ {
# websockets are passed to Daphne
proxy_pass http://robosats_daphne_websocket;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_set_header Host $host;
limit_req zone=tenpersec burst=10;
}
location = /favicon.ico { access_log off; log_not_found off; }
}