80d4edcf0be923ba2c1ea9f0026ba909e7d517f8
Nginx Cache Proxy
An nginx proxy server that caches requests only when explicitly requested via the X-Cache: 1 header.
Quick Start
# Build the image
./build.sh
# Run with docker-compose (uses the built image)
docker-compose up
# Or run directly
docker run -p 3000:3000 docker.site.quack-lab.dev/nginx-cache-proxy:latest
Configuration
The nginx configuration implements an inverted caching logic:
- Default behavior: Requests are NOT cached
- Cached behavior: Only requests with
X-Cache: 1header are cached
Usage
# Proxy a URL
curl "http://localhost:3000/?url=https://api.example.com/data"
# Enable caching with X-Cache header
curl -H "X-Cache: 1" "http://localhost:3000/?url=https://api.example.com/data"
Features
- Cache path:
/var/cache/nginx - Cache zone:
api_cache(10MB) - Max cache size: 1GB
- Cache validity: 365 days for 200 responses
- Cache status header:
X-Cache-Statusshows cache hit/miss status - HTTPS support with proper SSL/TLS headers
In n8n
Add the X-Cache: 1 header only to requests you want cached. All other requests will bypass the cache completely.
Description
Languages
HTML
49.1%
Shell
42%
Dockerfile
8.9%