Migrating from Varnish
Maxim Dounin
mdounin at mdounin.ru
Thu Nov 23 15:55:40 UTC 2017
Hello!
On Thu, Nov 23, 2017 at 09:00:52AM -0600, Andrei wrote:
> Hi all,
>
> I've been using Varnish for 4 years now, but quite frankly I'm tired of
> using it for HTTP traffic and Nginx for SSL offloading when Nginx can just
> handle it all. One of the main issues I'm running into with the transition
> is related to cache purging, and setting custom expiry TTL's per
> zone/domain. My questions are:
>
> - Does anyone have any recent working documentation on supported
> modules/Lua scripts which can achieve wildcard purges as well as specific
> URL purges?
Cache purging is available in nginx-plus, see
http://nginx.org/r/proxy_cache_purge.
> - How should I go about defining custom cache TTL's for: frontpage,
> dynamic, and static content requests? Currently I have Varnish configured
> to set the ttl's based on request headers which are added in the config
> with regex matches against the host being accessed.
Normal nginx approach is to configure distinct server{} and
location{} blocks for different content, with appropriate cache
validity times. For example:
server {
listen 80;
server_name foo.example.com;
location / {
proxy_pass http://backend;
proxy_cache one;
proxy_cache_valid 200 5m;
}
location /static/ {
proxy_pass http://backend;
proxy_cache one;
proxy_cache_valid 200 24h;
}
}
Note well that by default nginx respects what is returned by the
backend in various response headers, and proxy_cache_valid time
only applies if there are no explicit cache validity time set, see
http://nginx.org/r/proxy_ignore_headers.
--
Maxim Dounin
http://mdounin.ru/
More information about the nginx
mailing list