Content caching with NGINX
In addition to simply proxying the data through, we can use NGINX to cache the proxied content. By doing this, we can reduce the amount of calls to your backend service, assuming that the calls are able to be cached.
Getting ready
As the caching is part of the standard NGINX platform, no additional prerequisites are required.
How to do it...
In order to enable the cache, first we need to define where to store the cached files. This needs to be set outside the server
block directive and is best stored in the main nginx.conf
file. Here's the directive required:
proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=cache:2m
Note
Make sure you create the directory and that NGINX has write access.
Then, we can create a block directive to use this cache:
server { listen 80; server_name cached.nginxcookbook.com; access_log /var/log/nginx/cache-access.log combined; location / { proxy_pass http://localhost:8080; proxy_cache cache...