.htaccess kullanarak site sayfalarını önbelleğe alma - Önbellek

Yazdır · Время на чтение: 9min · tarafından · Yayınlanan · Güncellenmiş

çoğaltmakmakaleyi dinle

Statik dosyaların ve sayfaların önbelleğe alınması.

.htaccess ile site sayfalarını önbelleğe alma. Teknik optimizasyonun eşit derecede önemli bir aşaması, gzip sıkıştırmasını etkinleştirme veya CSS küçültme. Önbellek sayfalarını ve dosyalarını etkinleştirmek, sitenin hızını önemli ölçüde artırmanıza olanak tanır. Ayrıca bazen sunucu üzerindeki yükü azaltır. Basit manipülasyonlar sayesinde siteniz uçmaya başlayacaktır.

Bu yazıda, bu konunun tüm yönleri hakkında konuşacağız. Önbelleğin site ve uygulaması için önemi nedir? Pratikte uygulayabileceğiniz örnekleri anlatacağım. Artı, WordPress için bazı oldukça iyi Önbellek eklentilerinin kısa bir incelemesi olacak.

Site önbelleği nedir - önbelleğe alma bir siteyi nasıl etkiler?

Basit bir ifadeyle, önbelleğe alma - bu, tarayıcıdaki kullanıcıdan siteyle ilgili bilgilerin kaydedilmesidir. Böylece sunucu üzerindeki ana yük azaltılır. Kaydedilmiş kısmı kullanıcının tarayıcısı tarafından yükleneceği için sitenin önemli bir kısmının yüklenmesi gerekmeyecektir. Bu, sitenin yüklenmesini hızlandırmak için son derece etkili bir yöntemdir.

Önbellek veya önbellek veya Önbellek, hızlı erişime sahip bir ara panodur. Sıkça talep edilen bilgileri saklamak ve içermek. Önbellekteki verilere erişim, daha yavaş bellek kaynaklarından daha hızlıdır. Ancak bir hafıza sınırı vardır. Basit bir dille Önbellek kısa bir hafızadır.

Aynı zamanda önbelleğe alma kullanıcıya zarar vermez. Ancak projenizin tarayıcısında görüntülenmesini iyileştirir. Bu nasıl olur! Kullanıcı siteyi ziyaret ettiğinde. Yüklemesi olması gerekenden biraz daha yavaş. Bunun nedeni, tarayıcının şu anda sitenin bir kopyasını kaydetmesidir. Bu, büyük ölçüde aşağıdakiler için geçerlidir:

  1. logolara;
  2. küçük resimler;
  3. css dosyaları;
  4. genel sayfa yapısı.

Böylece, sitenin bir kısmı sürekli olarak kullanıcının tarayıcısının hafızasında (önbellekte) bulunur. Bu nedenle, siteyi yeniden yüklerken ziyaretçi mümkün olan en yüksek yanıt hızını alır. Tarayıcı şu anda bazı öğeleri belleğinden kaldırıyor. Ve site, büyük miktarda bilgiyi yeniden iletmeye gerek yoktur.

Sitede önbellek etkinleştirildiğinde ve yapılandırıldığında. Belirli bir kısmı, ziyaretçinin tarayıcısının yerel önbelleğinde gerekli süre boyunca saklanacaktır. Tekrarlanan ziyaretlerde hangi web sayfalarının çok daha hızlı yükleneceği.

Site önbelleğe alma nasıl etkinleştirilir ve yapılandırılır

Bunu yapmak hiç de zor değil. Sunucu için kuralları belirleyen htaccess dosyası ile çalışmaya devam edeceğiz. Bununla nasıl çalışılacağını birçok makalede anlattım. Bu yüzden doğrudan konuya geleceğim. Standarda göre önbelleğe alma, gerekli dosyalar için ve belirli bir süre için ayarlanmıştır. Dosyanın saklanması için ayrılan sürenin sona ermesinden sonra, güncel sürümü sunucudan tekrar indirilecektir. Bunun için ihtiyacınız var:

  • FilesMatch türünde bir yapı oluşturun. İçinde, önbelleğe alma için gerekli dosya uzantılarını belirtiyoruz.
  • Ardından, max-age değişkeni ile Cache-Control başlığını belirtiyoruz. Burada Cache-Control, sunucu yanıt başlığıdır. Max-age, dosya depolama süresini saniye cinsinden belirten bir değişkendir.

FilesMatch yapısında kullanılan tipik bir uzantı listesi:

(ico|pdf|flv|jpg|jpeg|png|gif|webp|js|css|swf|x-html|css|xml|js|woff|woff2|ttf|svg|eot)(\.gz)

Önbelleğe almak istemediğiniz dosyaların FilesMatch yapısının listesine dahil edilmesi gerekmez.

Kod örneği Başlık seti Cache-Control

# Önbellek Kontrolü

# 30 gün

Başlık, Cache-Control "max-age=2592000, public" olarak ayarlandı

# 30 gün

Başlık, Cache-Control "max-age=2592000, public" olarak ayarlandı

# 2 gün

Başlık, Cache-Control "max-age=172800, public, must-revalidate" ayarını yaptı

Değer -#- yorum yapın! Gördüğünüz gibi, yorumlar dosyaların kaydedileceği terimleri belirtir. Zorunlu önbelleği devre dışı bırakma seçeneği de vardır. Bu seçenek dinamik dosyalar için uygundur. Komut dosyaları ve çeşitli senaryolarla daha fazla ilgili.

Zorunlu önbelleğe almayı devre dışı bırakan "FilesMatch" yapısına bir örnek


Başlık ayarını kaldır Cache-Control

Gördüğünüz gibi, son tarih yok. Bu nedenle, bu dosya uzantıları önbelleğe alınmayacaktır. Bu tasarımda dosya uzantılarınızı ekleyebilirsiniz.

Önbelleği yönetmenin başka bir yolu da vardır - bu, WordPrees'teki birçok eklenti tarafından kullanılır. Bu yöntemde mod_expires modülünü kullanacağız. Bu modül, sunucu tarafında HTTP yanıt başlıklarını kontrol etme yeteneğine sahiptir. Burada önbellekte veri depolamanın ana zamanı sizin tarafınızdan ayarlanabilir.

Veri depolama süresi için çeşitli ayarlara sahiptir:

  1. istemci erişim süresine göre;
  2. veya dosyanın son değişikliği ile;
  3. zaman ayarı;

Basit Önbellek Kodu Örneği

# Başlıklarının Süresi Doldu - 2678400s = 31 gün

Etkinliğin Süresi Doluyor
ExpiresDefault "erişim artı 1 saniye"
ExpiresByType text/html "erişim artı 7200 saniye"
ExpiresByType image/gif "erişim artı 2678400 saniye"
ExpiresByType image/jpeg "erişim artı 2678400 saniye"
ExpiresByType image/png "erişim artı 2678400 saniye"
ExpiresByType text/css "erişim artı 518400 saniye"
ExpiresByType metin/javascript "erişim artı 2678400 saniye"
ExpiresByType uygulaması/x-javascript "erişim artı 2678400 saniye"

Önbellek için daha ciddi bir kullanım durumu

Etkinliğin Süresi Doluyor
ExpiresByType text/css A31536000
ExpiresByType metin/x bileşeni A31536000
ExpiresByType uygulaması/x-javascript A31536000
ExpiresByType uygulaması/javascript A31536000
ExpiresByType metin/javascript A31536000
ExpiresByType text/x-js A31536000
ExpiresByType text/html A3600
ExpiresByType text/richtext A3600
ExpiresByType image/svg+xml A3600
ExpiresByType metin/düz A3600
ExpiresByType text/xsd A3600
ExpiresByType text/xsl A3600
ExpiresByType text/xml A3600
Türüne göre video/asf A31536000
Türüne göre video/avi A31536000
ExpiresByType image/bmp A31536000
ExpiresByType uygulaması/java A31536000
Türüne göre video/divx A31536000
ExpiresByType uygulaması/msword A31536000
ExpiresByType application/vnd.ms-fontobject A31536000
ExpiresByType uygulama/x-msindir A31536000
ExpiresByType image/gif A31536000
ExpiresByType uygulaması/x-gzip A31536000
ExpiresByType image/x-icon A31536000
ExpiresByType image/jpeg A31536000
ExpiresByType image/webp A31536000
ExpiresByType uygulaması/json A31536000
ExpiresByType application/vnd.ms-access A31536000
Türüne göre ses/midi A31536000
ExpiresByType video/quicktime A31536000
Türüne göre ses/mpeg A31536000
Türüne göre video/mp4 A31536000
Türüne göre video/mpeg A31536000
ExpiresByType application/vnd.ms-project A31536000
ExpiresByType application/x-font-otf A31536000
ExpiresByType uygulaması/vnd.ms-opentype A31536000
ExpiresByType application/vnd.oasis.opendocument.database A31536000
ExpiresByType application/vnd.oasis.opendocument.chart A31536000
ExpiresByType application/vnd.oasis.opendocument.formula A31536000
ExpiresByType application/vnd.oasis.opendocument.graphics A31536000
ExpiresByType application/vnd.oasis.opendocument.sunum A31536000
ExpiresByType application/vnd.oasis.opendocument.spreadsheet A31536000
ExpiresByType application/vnd.oasis.opendocument.text A31536000
ExpiresByType audio/ogg A31536000
ExpiresByType uygulaması/pdf A31536000
ExpiresByType image/png A31536000
ExpiresByType application/vnd.ms-powerpoint A31536000
Türüne göre ses/x-realaudio A31536000
ExpiresByType image/svg+xml A31536000
ExpiresByType uygulaması/x-shockwave-flash A31536000
ExpiresByType application/x-tar A31536000
ExpiresByType image/tiff A31536000
ExpiresByType application/x-font-ttf A31536000
ExpiresByType uygulaması/vnd.ms-opentype A31536000
Türüne göre ses/wav A31536000
Türüne göre ses/wma A31536000
ExpiresByType application/vnd.ms-write A31536000
ExpiresByType uygulaması/font-woff A31536000
ExpiresByType uygulaması/font-woff2 A31536000
ExpiresByType uygulaması/vnd.ms-excel A31536000
ExpiresByType uygulama/zip A31536000

Gördüğümüz gibi, burada çok sayıda uzantı etkileniyor. Aynı raf ömrü ile.

Kullanıcı tarafında tarayıcıda 3 - 7 gün veya bir yıl boyunca önbelleğe alma

Burada, dosya uzantılarının büyük kısmı bir yıl süreyle saklanacaktır. Bu, büyük ölçüde görüntüler için yararlıdır, çünkü çok az kişinin onları değiştirdiğini düşünüyorum. Böylece yıl boyunca ziyaretçinin tarayıcısına yüklenecektir.

# kullanıcı tarafı tarayıcı önbelleği

Etkinliğin Süresi Doluyor
ExpiresDefault "7 gün erişim"
ExpiresByType uygulaması/javascript "erişim artı 1 yıl"
ExpiresByType text/javascript “erişim artı 1 yıl”
ExpiresByType metin/css "erişim artı 1 yıl"
ExpiresByType text/html "erişim artı 7 gün"
ExpiresByType text/x-javascript “erişim 1 yıl”
ExpiresByType image/gif “erişim artı 1 yıl”
ExpiresByType image/jpeg “erişim artı 1 yıl”
ExpiresByType image/png “erişim artı 1 yıl”
ExpiresByType image/jpg “erişim artı 1 yıl”
ExpiresByType image/x-icon “erişim 1 yıl”
ExpiresByType uygulaması/x-shockwave-flash "erişim 1 yıl"
ExpiresByType js “erişim 3 gün”

İçeriği önbelleğe alma (Flash, CSS, JS, HTML, XML) ve resimler

Bu örnekte, önbelleği yalnızca belirli dosyalar için kullanıyoruz. Ve daha kısa bir süre için.

Etkinliğin Süresi Doluyor
# Görüntü Önbelleği
ExpiresByType image/x-icon "erişim artı 2592000 saniye"
ExpiresByType image/jpeg "erişim artı 2592000 saniye"
ExpiresByType image/png "erişim artı 2592000 saniye"
ExpiresByType image/gif "erişim artı 2592000 saniye"
# İçerik önbelleği (Flash, CSS, JS, HTML, XML)
ExpiresByType uygulaması/x-shockwave-flash "erişim artı 2592000 saniye"
ExpiresByType metin/css "erişim artı 604800 saniye"
ExpiresByType text/javascript "erişim artı 2592000 saniye"
ExpiresByType uygulaması/javascript "erişim artı 2592000 saniye"
ExpiresByType uygulaması/x-javascript "erişim artı 2592000 saniye"
ExpiresByType text/html "erişim artı 600 saniye"
ExpiresByType application/xhtml+xml "erişim artı 600 saniye"

Sayfaların ve site dosyalarının önbelleğe alınmasını ayarlamak o kadar da zor bir şey değil. Ana şey doğru stratejiyi seçmektir. Yukarıdaki örneklerin tümü, kendi takdirinize bağlı olarak kullanabilirsiniz. Stratejileri test edin ve doğru kod seçeneğini seçin. Aşağıda WordPress için bazı Önbellek eklentilerinden bahsedeceğim.

WordPress eklentileriyle önbelleğe almayı ayarlama

CMS WordPress kullananlar için çok çeşitli önbellek eklentileri vardır. Hepsinin tam özellikli bir çözümü ve otomatik yapılandırması vardır. Bu tür eklentileri kullanırken herhangi bir özel sorun olmamalıdır. Böyle bir eklenti kurduktan sonra, ihtiyacınız olan ayarları uygulamanız yeterlidir. Eklenti bunları otomatik olarak htaccess dosyasına kaydeder.

WP En Hızlı Önbellek

WP En Hızlı Önbellek Premium En Hızlı Önbellek Eklentisi.

WP için popüler ve oldukça güçlü bir önbellek eklentisi. Dahil olmak üzere çok çeşitli ayarlara sahiptir. HTML optimizasyonu, CSS ve J'ler. Acemi bir kullanıcı bile anlayabilir.

WP Süper Önbellek

WP Super Cache, sayfa yüklemeyi hızlandırmak için bir eklentidir.

Çok popüler eklenti! Mükemmel işlevsellik ve uygun ayarlar. Çok sayıda farklı nesneyi önbelleğe alma yeteneğine sahiptir. Eklentiyi kurmak çok basittir.

W3 Toplam Önbellek

En iyi WordPress önbellek eklentisi W3 Total Cache'dir.

Büyük siteler için güçlü çözüm. Türünün en popüler eklentisi. Çok çeşitli ayarlar ve işlevler vardır. Kritik hatalara neden olabileceğinden dikkatli bir şekilde yapılandırmanız gerekir. Diğer eklentiler veya temalarla çakışma olasılığı vardır. Ancak işlevsellik açısından çok iyi ve güçlü bir eklenti.

Bunlar, benim de kullandığım ana ve en popüler önbellek eklentileridir. Tercihlerinize bağlı olarak herhangi birini seçebilirsiniz.

Nihayet

Bu yazıda önbelleğe alma konusunu mümkün olduğunca ele almaya çalıştım. Özelliklerinize bağlı olarak kullanılabilecek örneklerin belirtilmesi. Bu kılavuzla önbelleğe almayı ayarlamak sizin için saat gibi ilerleyecektir. Umarım bu makale uzun süre alakalı olur. İlginiz için teşekkür ederim ama hoşçakal demiyorum. Sonraki yazılarda görüşmek üzere.

Nicola Top'u okuduğunuz için teşekkür ederiz.

Gönderi ne kadar yararlı?

Derecelendirmek için ifadeye tıklayın!

Ortalama puanı 4.9 / 5. Derecelendirme sayısı: 25

Henüz derecelendirme yok. Önce derecelendirin.

Şunlar da hoşunuza gidebilir...

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

2 × 1 =