proxy_cache_path /var/cache/nginx/data keys_zone=data:10m max_size=1g inactive=7d; proxy_temp_path /var/cache/nginx/tmp; server { listen 80; server_name _; client_max_body_size 0; fastcgi_send_timeout 600; fastcgi_read_timeout 600; proxy_connect_timeout 600; proxy_send_timeout 600; proxy_read_timeout 600; send_timeout 600; location ~ ^/wp-* { proxy_pass http://wordpress; proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header X-Forwarded-Host $server_name; proxy_set_header X-Forwarded-Proto $scheme; proxy_pass_header Set-Cookie; proxy_redirect off; } location / { proxy_pass http://node; proxy_set_header Host $http_host; proxy_cache data; proxy_cache_key $uri$is_args$args; proxy_cache_min_uses 1; proxy_cache_valid 400 404 1m; proxy_ignore_headers Vary; add_header Access-Control-Allow-Origin *; add_header Access-Control-Expose-Headers X-WP-Total; add_header X-Cache-Date $upstream_http_date; add_header X-Cache-Status $upstream_cache_status; } } upstream node { server node:80; } upstream wordpress { server wordpress:80; }