# 30 , 100 proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=static:32m inactive=30d max_size=100g; server { listen 80; server_name assets01.example.com assets02.example.com assets03.example.com assets04.example.com; # access_log , .. access_log off; error_log /var/log/nginx/example.com-err.log; # , http://assetsXX.example.com/ - location / { rewrite ^ http://example.com$uri permanent; } # , location ~* \.(jpg|jpeg|gif|png|ico|css|midi|wav|bmp|js|swf|flv|avi|djvu|mp3)$ { # IP Hetzner proxy_pass http://111.111.111.111:80; proxy_redirect off; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_buffer_size 16k; proxy_buffers 32 16k; # expires , serial ( , http://assetsXX.example.com/css/styles.css?2342324) if ($request_uri ~* "\?[0-9]+$") { expires max; break; } proxy_cache static; # 30 proxy_cache_valid 30d; proxy_ignore_headers "Cache-Control" "Expires"; # , , assetsXX ( /css/styles.css?123 /css/styles.css?321 ) proxy_cache_key "$uri$is_args$args"; proxy_cache_lock on; } }
Source: https://habr.com/ru/post/160127/
All Articles