splatoon2.ink/docker/nginx/conf.d/default.conf
2019-05-25 09:18:55 -07:00

62 lines
1.5 KiB
Plaintext

# Rate limiting zone (Note: 10m is the size of the address pool, not time)
limit_req_zone $binary_remote_addr zone=main:10m rate=10r/s;
server {
listen 80 default_server;
root /usr/share/nginx/html;
index index.html;
charset utf-8;
charset_types application/json;
# Docker reverse proxy IP passthrough
set_real_ip_from 172.16.0.0/12;
real_ip_header X-Real-IP;
# Log to a file as well as the main (Docker stdout) log
access_log /var/log/nginx/access.log;
access_log /logs/access.log;
# Rate limiting: allow bursts with no delay
limit_req zone=main burst=500 nodelay;
location / {
try_files $uri $uri/ /index.html;
}
# Force browsers to check for updated data
location /data/ {
add_header Cache-Control no-cache;
add_header Access-Control-Allow-Origin *;
autoindex on;
}
location /twitter-images/ {
add_header Cache-Control no-cache;
add_header Access-Control-Allow-Origin *;
}
location ~ \.ics$ {
add_header Content-Type text/calendar;
}
# CORS (for modern ES module support and third-party integrations)
location /assets/ {
add_header Access-Control-Allow-Origin *;
}
# Block access to the file used for screenshots
location = /screenshots.html {
internal;
}
}
# Redirect www to non-www
server {
listen 80;
server_name www.splatoon2.ink;
return 301 $scheme://splatoon2.ink$request_uri;
}