Nginx bypass cache with request headers
Bazı durumlarda, test vb. yapıldığı sırada sitemizin cache ‘den gelmesini istemeyebiliriz. Sitemizin, yani uygulamamızın ham performansını görmek veya uygulama üzerinde yapılan değişikliklerin hızlıca görmek isteyebiliriz. Bunun için nginx cache config ‘i üzerinde aşağıdaki gibi yapılandırmamız gerekecektir.
Yapılandırmamızın ilk önemli kısmı, 18 ve 19 satırlarındadır. Ardından, 21. satırda bir değişken ayarlayıp, değerini 0 veriyoruz. 23–32 arası request header’da göndereceğimiz custom header bilgisini giriyoruz ve değişkenimizin değerini 1 olarak ayarlıyoruz. Böylelikle cache bypass edilecek.
Örnek sorgular aşağıdaki gibidir. Request header bilgisine “X-Galata-Header: galata” header’ı göndererek, “X-Proxy-Cache” değerinin “bypass” olarak ayarlandığını göreceksiniz. Yani istek direkt upstream sunucudan döndü. Cache kullanılarak cevap dönmedi.
Direkt olarak / pathine gittiğimizde ise, “X-Proxy-Cache” değeri “hit” olarak cevap döndü, yani cache’den cevap verdi.

Docs;