Pa, 06/11/2017 - 21:45 By Umit
nginx cache

Nginx'te statik dosyaları önbellekte nasıl saklayabilirim?

Bu ders, nginx'i, statik dosyaların (resim, CSS ve Javascript dosyaları gibi) Expires HTTP üstbilgisini ve Cache-Control HTTP üstbilgisinin maksimum yaş yönergesini gelecekte bir tarihe ayarlayacak şekilde nasıl yapılandırabileceğinizi açıklar; böylece bu dosyaların Ziyaretçilerinizin tarayıcıları tarafından önbelleğe alınacaktır. Bu, bant genişliğini azaltır ve web sitenizi daha hızlı görünmesini sağlar (bir kullanıcı sitenizi ikinci kez ziyaret ederse, statik dosyalar tarayıcı önbelleğinden getirilir). Çalışan bir nginx kurulumunuz olduğunu varsayıyorum, ör. Bu öğreticide gösterildiği gibi: Ubuntu'da LEMP (Nginx, MySQL, PHP) Server ve phpMyAdmin Kurulumu

Web sitenizin vhost dosyasına aşağıdaki satırları ekleyin.

location ~*  .(jpg|jpeg|png|gif|ico|css|js)$ {
expires 365d;
}

Yukarıdaki örnekte, tüm .jpg, .jpeg, .png, .gif, .ico, .css ve .js dosyaları gelecekte tarayıcı erişim süresinden 365 gün sonra bir tarih içeren bir Expires başlığı alıyor. Bu nedenle, {} bloğunun gerçekten yalnızca tarayıcılar tarafından önbelleğe alınabilen statik dosyaları içerdiğinden emin olmanız gerekir.

Değişikliklerinizden sonra nginx'u tekrar yükleyin:
/etc/init.d/nginx reload
Geçerlilik süresi aşağıdaki zaman ayarları yönergelerini kullanabilirsiniz.
Aşağıdaki zaman birimlerini kullarak önbellekleme süresini belirliyebilirsiniz.
Ms: milisaniye: s: saniyem: m: dakika: h: saat: d: gün: w: hafta M: ay (30 gün) y: yıl (365 gün) Örnek kullanım: 1 saat 30 dakika için 1h30m , bir yıl ve altı ay için 1y6M
nginx HttpHeadersModule: http://wiki.nginx.org/HttpHeadersModule ilgili kaynağı inceleyebilirsiniz.
Mutlu kodlamalar