server { listen ${NGINX_PORT}; server_name localhost; root /app/public; index index.html; access_log off; client_max_body_size 100m; location /data { expires max; break; } location /data/deleted/ { add_header Cache-Control "private"; secure_link $arg_auth,$arg_expires; secure_link_md5 "$secure_link_expires $uri $arg_uid ${DANBOORU_PROTECTED_FILE_SECRET}"; if ($secure_link = "") { return 403; } if ($secure_link = "0") { return 403; } } location /data/replacements/ { add_header Cache-Control "private"; secure_link $arg_auth,$arg_expires; secure_link_md5 "$secure_link_expires $uri $arg_uid ${DANBOORU_REPLACEMENT_FILE_SECRET}"; if ($secure_link = "") { return 403; } if ($secure_link = "0") { return 403; } } location /tags/autocomplete.json { proxy_pass http://autocompleted:8118/; proxy_redirect off; } location @app_server { proxy_pass http://app_server; proxy_redirect off; proxy_set_header X-Real-IP $remote_addr; proxy_set_header Host $host:$server_port; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Port $server_port; proxy_set_header X-Forwarded-Proto $scheme; } location / { try_files $uri @app_server; } error_page 404 /404.html; error_page 500 502 503 504 /500.html; } upstream app_server { server e621:9000; }