worker_processes 1; user nginx; error_log /dev/stderr warn; pid /var/run/nginx.pid; events { worker_connections 1024; } http { include /etc/nginx/mime.types; default_type application/octet-stream; log_format main '$remote_addr -> $request [$status] - ' 'referer: $http_referer $http_x_forwarded_for'; access_log /dev/stdout main; server_tokens off; sendfile on; keepalive_timeout 65; client_max_body_size 0; upstream backend { server __BACKEND__:6666; } server { listen 80 default_server; location ~ ^/api$ { return 302 /api/; } location ~ ^/api/(.*)$ { add_header 'Access-Control-Allow-Origin' '*'; if ($request_method = 'OPTIONS') { add_header 'Access-Control-Allow-Methods' 'GET, POST, PUT, DELETE, OPTIONS'; add_header 'Access-Control-Allow-Headers' 'Authorization, Content-Type'; return 200; } if ($request_uri ~* "/api/(.*)") { proxy_pass http://backend/$1; } gzip on; gzip_comp_level 3; gzip_min_length 20; gzip_proxied expired no-cache no-store private auth; gzip_types text/plain application/json; } location /data/ { rewrite ^/data/(.*) /$1 break; root /data; } location / { root /var/www; try_files $uri /index.htm; gzip_static on; gzip_proxied expired no-cache no-store private auth; } } } daemon off;