“Önbellek Doğrulayıcı Belirtin” Hatası Nasıl Düzeltilir
Yayınlanan: 2022-06-11Web sitenizin performansını GTmetrix veya Pingdom kullanarak test ederseniz, "bir önbellek doğrulayıcı belirtin" yazan bir hatayla karşılaşabilirsiniz. Bu mesaj, tarayıcı önbelleğinden tam anlamıyla yararlanmadığınız anlamına gelir. Ne yazık ki, bu sitenizin performansını olumsuz etkileyebilir.
Bu yazımızda “Cache validator belirt” hatasının ne anlama geldiğinden bahsedeceğiz. Ayrıca bunu WordPress'te nasıl düzelteceğinizi ve web sitenizin performansını nasıl optimize edeceğinizi göstereceğiz. Hemen ona geçelim!
“Önbellek Doğrulayıcı Belirtin” Ne Demektir?
Önbelleğe almayı etkinleştirerek, ziyaretçilerin tarayıcılarına veya "istemcilerine", web sitenizi ziyaret ettiklerinde kritik dosyaları yerel olarak depolamaları talimatını verebilirsiniz. Bu şekilde, kullanıcıların sayfanızı her açtıklarında sitenin tamamını ve kaynaklarını yeniden yüklemeleri gerekmeyecektir.
Önbelleğe alma, web siteleri arasında inanılmaz derecede yaygın bir uygulamadır. Ayrıca sitenizin performansını artırmanın en etkili yollarından biridir. Ancak, uygun bir uygulama, bir önbelleğe alma "politikası" gerektirir.
Bu politika, aşağıdakiler hakkında açık talimatlar sağlayan önbelleğe alma başlıklarının dahil edilmesi anlamına gelir:
- Önbelleğe alınmış kaynaklar nasıl doğrulanır?
- İstemcinin önbelleğe alması gereken kaynaklar
- İstemcinin kaynakları ne kadar süreyle önbelleğe alması gerektiği
- İstemci, önbelleğe alınmış kaynaklardaki değişiklikleri nasıl aramalıdır?
"Bir önbellek doğrulayıcı belirtin" hatası, web sitenizin yanıtlarında karşılık gelen önbelleğe alma başlıklarına sahip olmadığı anlamına gelir. Bu talimat eksikliği, önbelleğe almanın işe yaramayacağı anlamına gelmez. Ancak, olabildiğince verimli çalışmayacaktır:
WordPress web sitenizin performansını analiz ederken bu hatayla karşılaşırsanız, bu, web sitenizin mümkün olduğunca hızlı yüklenemeyebileceği anlamına gelir. Ancak, uygun önbelleğe alma başlıklarını kullanarak bu sorunu çözebilirsiniz.
WordPress'te Önbellek Doğrulayıcı Nasıl Belirlenir (3 Yöntem)
Web sitenizin başlıklarında uygulayabileceğiniz çeşitli önbellek doğrulayıcı türleri vardır. Sunucu, son değiştirilen veya ETag doğrulayıcıları gibi bazı durumlarda bunları otomatik olarak ekler.
"Bir önbellek doğrulayıcı belirtin" hatasıyla karşılaşıyorsanız, büyük olasılıkla suçlular önbellek kontrolünün olmaması veya süresi dolan başlıklardır. Her ikisini de WordPress'e nasıl ekleyeceğinizi ele alalım.
1. Önbellek Kontrol Başlıklarını Manuel Olarak Ekleyin
Önbellek denetimi üstbilgileri, önbelleğin süresini veya "uzunluğunu" saniye cinsinden belirtmenizi sağlar. Bu başlıkları, uzunluğun hangi dosya türleri için geçerli olduğunu belirtmek için de kullanabilirsiniz. Başlığın yapısı, kullandığınız web sunucusu yazılımına bağlı olarak değişecektir.
Apache sunucuları için .htacess dosyasını düzenlemeniz gerekir. WordPress kök klasörünüzde bulabilirsiniz. Ancak, buna Dosya Aktarım Protokolü (FTP) aracılığıyla erişmenizi öneririz.
.htaccess dosyasını açın ve aşağıdaki kod parçacığını ekleyin, ardından özelleştirin:
<filesMatch ".(jpg|jpeg|png|gif|js|css)$"> Header set Cache-Control "max-age=604800, public" </filesMatch>
Bu kod, filesMatch etiketi içindeki dosya türleri için önbellek uzunluğunu gösterir. Hangi öğeleri önbelleğe almak istediğinize bağlı olarak dosya türleri ekleyebilir veya kaldırabilirsiniz.
NGINX kullanıyorsanız, sunucunun birincil yapılandırma dosyasını değiştirmeniz gerekecektir. /etc/nginx dizininde bulabilirsiniz.
Dosyayı açın ve içine aşağıdaki kodu ekleyin:
location ~* \.(jpg|jpeg|png|gif|js|css)$ { add_header Cache-Control "public"; }
Değişiklikleri dosyanıza kaydedin ve kapatın. Ayrıca, web sitenizin performansını tekrar test etmeden önce süresi dolan başlıklar eklemenizi öneririz.
2. Sona Eren Başlıklarını Manuel Olarak Ekleyin
Sona erme başlıkları, biraz eskimiş önbellek doğrulayıcı türleridir. Aslında, önbellek kontrol başlıkları artık onların yerini alıyor. Çoğu modern tarayıcı önce önbellek kontrol başlıklarını arayacaktır, ancak her iki doğrulayıcıyı da üslerinizi kapsayacak şekilde belirtebilirsiniz.
Süresi dolan üstbilgilerin manuel olarak eklenmesi, hem Apache hem de NGINX'teki önbellek denetimi girişlerine benzer şekilde çalışır. Apache'de süresi dolan başlıklar eklemek için .htaccess dosyasını düzenlemeniz gerekir.
Aşağıda, kopyalayabileceğiniz bir başlık örneği verilmiştir ve çakışmaları önlemek için bunu dosyanın altına eklemenizi öneririz:
## EXPIRES HEADER CACHING ## <IfModule mod_expires.c> ExpiresActive On ExpiresByType image/jpg "access 1 year" ExpiresByType image/jpeg "access 1 year" ExpiresByType image/gif "access 1 year" ExpiresByType image/png "access 1 year" ExpiresByType text/css "access 1 month" ExpiresDefault "access 7 days" </IfModule> ## EXPIRES HEADER CACHING ##
Sona erme başlıkları, her dosya türü için belirli sona erme tarihlerini belirtir. Bir dosya türü için tarih belirtmezseniz, ExpiresDefault değerini kullanır.
NGINX sunucuları için birincil yapılandırma dosyasını değiştirmeniz gerekecektir. NGINX'te süresi dolan bir başlık şöyle görünür:
location ~* \.(png|jpg|jpeg|gif)$ { expires 7d; add_header Cache-Control "public"; }
Değişiklikleri kullandığınız dosyaya kaydedin, hepsi bu. Web sitenizin performansını tekrar test edin ve “önbellek doğrulayıcı belirtin” hatasının devam edip etmediğini görün.
3. Bir WordPress Önbelleğe Alma Eklentisi Kullanın
Son olarak, önbellek doğrulayıcıları belirtmek için bir eklenti kullanmayı düşünebilirsiniz. En popüler WordPress önbelleğe alma eklentilerinden bazıları, herhangi bir koda dokunmadan siteniz için son kullanma tarihlerini ve önbellek kontrol başlıklarını yapılandırmanıza olanak tanır.
Önbelleğe alma eklentisi kullanmanın dezavantajı, birçok web barındırıcısının bunlara izin vermemesidir. Aslında, özellikle yönetilen birçok web barındırıcısı, kullanıcıları için optimum performans için önbelleğe almayı manuel olarak yapılandırdıkları için önbelleğe alma eklentilerini kullanmanıza genellikle izin vermez.
Çoğu önbelleğe alma eklentisi, web sitenizi ETag veya Last-Modified başlıklarını kullanacak şekilde otomatik olarak yapılandırır. Olmazlarsa, varsayılan olarak önbellek kontrolüne geçebilir ve doğrulayıcıların süresi dolar .
Örneğin W3 Toplam Önbellek, hangi tür önbellek başlıklarını kullanabileceğiniz konusunda tam kontrol sağlar:
Web barındırıcınız önbelleğe alma eklentilerini kullanmanıza izin veriyorsa, hangisiyle daha rahat hissettiğinizi görmek için birden fazla seçeneği keşfetmenizi öneririz. Alternatif olarak, önbellek doğrulayıcılarını manuel olarak belirleyebilirsiniz (o kadar da zor değil!).
Çözüm
Önbelleğe alma, kullanıcılarınız için yükleme sürelerini azaltmanın en etkili yollarından biridir. Yerel olarak depolanan dosyalarla yükleme süreleri iyileşeceğinden, tekrar eden ziyaretçiler iyi önbelleğe alma politikalarından yararlanacaktır. Ancak, belirli bir önbelleğe alma ilkesi yapılandırmazsanız en iyi web sitesi performansını elde edemezsiniz.
Sunucunuz varsayılan olarak bunu yapmıyorsa, WordPress'te bir önbellek doğrulayıcı belirtmenin birkaç yolu vardır (ki bu nispeten yaygındır). Ana makinenizin ve sitenizin gereksinimlerine bağlı olarak, önbellek kontrol başlıklarını manuel olarak eklemek, süresi dolan başlıkları manuel olarak eklemek veya bir önbelleğe alma eklentisi kullanmak sorunlarınızı çözecektir. Bunların hiçbiri olmazsa, daha ayrıntılı yardım için ev sahibinizin desteğiyle iletişim kurmanın zamanı gelmiştir.
WordPress'te bir önbellek doğrulayıcının nasıl belirleneceği hakkında sorularınız mı var? Aşağıdaki yorumlar bölümünde onlar hakkında konuşalım!
Apghedia / Shutterstock.com aracılığıyla öne çıkan görsel