mirror of
https://github.com/mempool/mempool.git
synced 2024-12-26 16:24:26 +01:00
c5e0b0fc74
Currently we perma-cache everything matching /api/block, but this is bad because it also matches /api/block-height and /api/blocks/ API endpoints, which shouldn't be perma-cached. Add a trailing slash to prevent those from getting matched.
137 lines
3.4 KiB
Plaintext
137 lines
3.4 KiB
Plaintext
location /api/v1/statistics {
|
|
try_files /dev/null @mempool-api-v1-warmcache;
|
|
}
|
|
location /api/v1/mining {
|
|
try_files /dev/null @mempool-api-v1-warmcache;
|
|
}
|
|
location /api/v1/block/ {
|
|
try_files /dev/null @mempool-api-v1-forevercache;
|
|
}
|
|
location /api/v1 {
|
|
try_files /dev/null @mempool-api-v1-coldcache;
|
|
}
|
|
location /api/block/ {
|
|
rewrite ^/api/(.*) /$1 break;
|
|
try_files /dev/null @electrs-api-forevercache;
|
|
}
|
|
location /api/ {
|
|
rewrite ^/api/(.*) /$1 break;
|
|
try_files /dev/null @electrs-api-nocache;
|
|
}
|
|
|
|
location @mempool-api-v1-forevercache {
|
|
proxy_pass $mempoolBackend;
|
|
proxy_http_version 1.1;
|
|
|
|
proxy_set_header Host $http_host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
proxy_set_header Upgrade $http_upgrade;
|
|
proxy_set_header Connection "upgrade";
|
|
proxy_set_header X-Forwarded-Proto $scheme;
|
|
|
|
proxy_cache_bypass $http_upgrade;
|
|
proxy_cache_background_update on;
|
|
proxy_cache_use_stale updating;
|
|
proxy_cache api;
|
|
proxy_cache_valid 200 30d;
|
|
proxy_redirect off;
|
|
|
|
expires 30d;
|
|
}
|
|
|
|
location @mempool-api-v1-warmcache {
|
|
proxy_pass $mempoolBackend;
|
|
proxy_http_version 1.1;
|
|
|
|
proxy_set_header Host $http_host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
proxy_set_header Upgrade $http_upgrade;
|
|
proxy_set_header Connection "upgrade";
|
|
proxy_set_header X-Forwarded-Proto $scheme;
|
|
|
|
proxy_cache_bypass $http_upgrade;
|
|
proxy_cache_background_update on;
|
|
proxy_cache_use_stale updating;
|
|
proxy_cache api;
|
|
proxy_cache_valid 200 10s;
|
|
proxy_redirect off;
|
|
}
|
|
|
|
location @mempool-api-v1-coldcache {
|
|
proxy_pass $mempoolBackend;
|
|
proxy_http_version 1.1;
|
|
|
|
proxy_set_header Host $http_host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
proxy_set_header Upgrade $http_upgrade;
|
|
proxy_set_header Connection "upgrade";
|
|
proxy_set_header X-Forwarded-Proto $scheme;
|
|
|
|
proxy_cache_bypass $http_upgrade;
|
|
proxy_cache api;
|
|
proxy_cache_valid 200 10s;
|
|
proxy_redirect off;
|
|
|
|
expires 10s;
|
|
}
|
|
|
|
location @mempool-api-v1-nocache {
|
|
proxy_pass $mempoolBackend;
|
|
proxy_http_version 1.1;
|
|
|
|
proxy_set_header Host $http_host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
proxy_set_header Upgrade $http_upgrade;
|
|
proxy_set_header Connection "upgrade";
|
|
proxy_set_header X-Forwarded-Proto $scheme;
|
|
|
|
proxy_cache_bypass $http_upgrade;
|
|
proxy_redirect off;
|
|
proxy_buffering off;
|
|
|
|
expires -1;
|
|
}
|
|
|
|
location @electrs-api-nocache {
|
|
proxy_pass $electrsBackend;
|
|
proxy_http_version 1.1;
|
|
|
|
proxy_set_header Host $http_host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
proxy_set_header Upgrade $http_upgrade;
|
|
proxy_set_header Connection "upgrade";
|
|
proxy_set_header X-Forwarded-Proto $scheme;
|
|
|
|
proxy_cache_bypass $http_upgrade;
|
|
proxy_redirect off;
|
|
proxy_buffering off;
|
|
|
|
expires -1;
|
|
}
|
|
|
|
location @electrs-api-forevercache {
|
|
proxy_pass $electrsBackend;
|
|
proxy_http_version 1.1;
|
|
|
|
proxy_set_header Host $http_host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
proxy_set_header Upgrade $http_upgrade;
|
|
proxy_set_header Connection "upgrade";
|
|
proxy_set_header X-Forwarded-Proto $scheme;
|
|
|
|
proxy_cache_bypass $http_upgrade;
|
|
proxy_cache_background_update on;
|
|
proxy_cache_use_stale updating;
|
|
proxy_cache api;
|
|
proxy_cache_valid 200 30d;
|
|
proxy_redirect off;
|
|
|
|
expires 30d;
|
|
}
|