Expires Headers, sunucular tarafından belirlenmiş dosyaları, tarayıcıların önbelleğinden alınıp alınmaması gerektiğini belirten bir fonksiyondur. Expires Headers’ın amacı, sunuculardan indirilen dosyaların yüklerinin hafifletilmesi ve sunuculara yönelik HTTP isteklerinin azaltılmasıdır.
Bu işlemin önemli bir bileşeni olan web tarayıcıları da, kullanıcının bir web sitesi ziyareti sırasında, gerekli olan dosyaların indirilmesi ve sunucularla kurulan iletişimden sorumludurlar. Tarayıcılar sonraki adımda, web sitesinin görüntülenmesi için mevcut dosyaları derleyerek işleme alırlar.
Web sitelerinde barındırılan grafikler ve içerikler genişledikçe, cihaz ve sunucu arasında gerçekleşen dosya aktarımı da artmaktadır. Add Expires Headers, tarayıcıların en sık kullanılan dosyalarının önbelleğe almasını sağlayan fonksiyon olarak tanımlanabilir. Add Expires Headers çözümü ise “.htaccess” dosyasına belirlenmiş kod dizilimlerinin eklenmesi ile sağlanmaktadır.
Expires Headers fonksiyonu, web sayfalarının, önbelleğine alınmış sürümlerinin, sunulabilir durumlarını tarayıcı tarafından bilinmesini sağlamaktadır. Add Expires Headers fonksiyonunun avantajları ise aşağıdaki şekilde sıralanabilir.
Add Expires Headers, sunucu ve tarayıcı arasında gerçekleşen iletişim süresini kısaltarak, HTTP isteklerini azaltır, buna bağlı olarak da sitelerin performansı olumlu yönde etkilemiş olur. Add Expires Headers ayrıca, önbellek dosyalarının tekrar kullanılması ile kullanıcılar için indirilen dosya miktarlarının azaltılmasını sağlamaktadır. Kullanıcılar, herhangi bir web sitesini ziyaret ettikleri sırada, tarayıcılar siteye ait dosyaları yükleyerek, önbelleklerine kaydederler. Bir kullanıcı aynı web sitesini yeniden ziyaret ettiğinde ise siteye ait dosyaların tekrar yüklenmesine gerek kalmamaktadır. Add Expires Headers, siteye ait dosyaların indirildikten sonra saklanması için tarayıcılara komut iletir. Add Expires Headers kullanımının önemi özetle, bilgisayarlar ile web siteleri arasındaki işlem trafiğini azaltarak, önbellekte depolanmış olan verilerin kullanılmasını amaçlamak şeklinde ifade edilebilir.
Expires Headers fonksiyonu, oldukça basit bir çalışma sistematiğine sahiptir. Add Expires Headers ile belirlenmiş bir dosyanın tarayıcının önbelleği içerisinde ne kadar süre boyunca saklanması gerektiği bildirilir. Bu işlem ile kullanıcılar aynı siteyi ziyaret ettiklerinde, tekrar tüm dosyaların yüklenmesini beklemezler. Add Expires Headers fonksiyonu ile web sitelerinin yükleme sürelerinin kısaltılması sağlanmaktadır. Expires Headers başlıkları, belirlenmiş dosyalara ya da dosya türlerine göre ayarlanmaktadır. Tarayıcının web sitesini ziyaret ettiği sırada, belirlenmiş dosyaların ne zaman indirildikleri görülebilmektedir. Add Expires Headers ‘ın kullanım amacı, web sitelerinde sabit olarak kalan öğelerin, son görüntülenme zamanlarının belirlenmesidir. Web sitelerinde genellikle sabit olarak kullanılan formatlar ise aşağıdaki şekilde sıralanmaktadır.
GTmetrix, Google PageSpeed gibi web sitesi ölçüm araçlarında sıkça karşılaşılan sorunlardan biri de Add Expires Headers hatası olmaktadır. Add Expires Headers çözümü, FTP programları yardımıyla, web sitesinin FTP bilgilerine giriş yapılarak, aşağıda eklenen kod dizilimin .htaccess dosyasına yüklenmesi ile sağlanmaktadır.
# Enable expirations
ExpiresActive On
# Default directive
ExpiresDefault “access plus 1 month”
# My favicon
ExpiresByType image/x-icon “access plus 1 year”
# Images
ExpiresByType image/gif “access plus 1 month”
ExpiresByType image/png “access plus 1 month”
ExpiresByType image/jpg “access plus 1 month”
ExpiresByType image/jpeg “access plus 1 month”
# CSS
ExpiresByType text/css “access 1 month”
# Data interchange
ExpiresByType application/json “access plus 0 seconds”
ExpiresByType application/xml “access plus 0 seconds”
ExpiresByType text/xml “access plus 0 seconds”
# Javascript
ExpiresByType application/javascript “access plus 1 year”
# Favicon and cursor images
# HTML components (HTCs)
ExpiresByType text/x-component “access plus 1 month”
# HTML
ExpiresByType text/html “access plus 0 seconds”
# Manifest files
ExpiresByType application/x-web-app-manifest+json “access plus 0 seconds”
ExpiresByType text/cache-manifest “access plus 0 seconds”
# Media
ExpiresByType audio/ogg “access plus 1 month”
ExpiresByType image/gif “access plus 1 month”
ExpiresByType image/jpeg “access plus 1 month”
ExpiresByType image/png “access plus 1 month”
ExpiresByType video/mp4 “access plus 1 month”
ExpiresByType video/ogg “access plus 1 month”
ExpiresByType video/webm “access plus 1 month”
# Web feeds
ExpiresByType application/atom+xml “access plus 1 hour”
ExpiresByType application/rss+xml “access plus 1 hour”
# Web fonts
ExpiresByType application/font-woff “access plus 1 month”
ExpiresByType application/vnd.ms-fontobject “access plus 1 month”
ExpiresByType application/x-font-ttf “access plus 1 month”
ExpiresByType font/opentype “access plus 1 month”
ExpiresByType image/svg+xml “access plus 1 month”
Yukarıda belirtilen kodlarda yer alan “1 month” ya da “1 year” süreleri, web sitesine ait sabit verilerin, son görüntülenme zamanlarını ifade etmektedir.
Önbellek, geçici veri kümelerinin depolandığı, yüksek hızdaki katmanlardır. Önbelleğe alma (Caching) ise daha önceden alınmış ya da hesaplanmış olan verilerin, daha verimli kullanılması için oluşturulan fonksiyonlardır. Önbelleğe alma işlemleri, belirlenmiş verilere bir sonraki site ziyareti sırasında, daha hızlı erişilmesini sağlamaktadır. Önbellek içerisinde bulunan veriler RAM gibi donanımlar tarafından saklanır. Verilere erişim sağlamak için, yazılımlar üzerinden bağlantı kurulmaktadır. Önbelleğe alma işlemlerinin temel amacı, depolama alanlarına erişim gereksinimlerini azaltarak, verilere erişim performanslarının arttırılması yönündedir. Önbelleğe alma (Caching) sisteminin birçok avantajı bulunmaktadır. Bunlar;
Add Expires Headers fonksiyonu da, tarayıcılarda önbelleğe alınan verilerin, kullanıcılara sunulup sunulmayacağını belirtmektedir. Logolar, tasarım renkleri gibi sabit veriler, Add Expires Headers ile kullanıcıların siteye çok daha hızlı erişmesine ve HTTP isteklerinin azaltılmasına yardımcı olmaktadır.
Sunucu yüklerinin azaltılması amacıyla, görsel, nesne, CSS ve JavaScript dosyaları gibi site verilerinin geçici sürelerle saklanma işlemlerine Önbelleğe alma denilmektedir. Önbelleğe alma alternatifleri ise aşağıda sıralanmaktadır.
Web sitelerinde kullanılan veri tabanlarının hızları ve işlevsellik verimliliği, sitenin genel performansını etkileyen unsurlardandır. Veritabanlarının önbelleğe alınması, uygulama performanslarını etkileyen, arka uçlarda yer alan veritabanlarından sağlanan veri iletişim hızlarını yükseltmektedir. Gecikmeleri minimum seviyeye çeken bu uygulama, web siteleri için uygulanması gereken yöntemlerden biri olarak belirtilmektedir.
Web sitesi trafiğinin lokasyon bazlı dağıtılması durumlarında, siteye ait altyapının dünyanın her yerinde çoğaltılarak kullanılması her zaman mümkün olmayabilir. CDN (Content Delivery Network), HTML, CSS ve JavaScript gibi sabit içeriklerin önbelleğe alınma işlemlerinde kullanılmaktadır. Bu şekilde, web sitesini ziyaret eden kullanıcıların daha yakın bir konuma taşınarak, bekleme sürelerinin azaltılması hedeflenmektedir.
İnternet üzerinde gerçekleştirilen Domain sorguları sırasında, tanımlı Domaine bağlı IP adresinin çözülmesi için, DNS önbellek sunucuları üzerinden sorgu yapılmaktadır. DNS önbelleği, ISP (Internet Service Provider) İnternet Servis Sağlayıcı ve DNS sunucuları aracılığıyla, işletim sistemleri de dahil, pek çok farklı düzeyde işlem görmektedir.
HTTP oturumları, web sitesinin kullanıcılarının giriş bilgilerini, daha önce görüntülenme süreçlerini, alışveriş izlerini kapsayan bir dizi bilgiyi içermektedir. Kullanıcılara ait tercihlerin bilinmesi ve hatırlanması, kullanıcı deneyimini yükselterek, HTTP oturumlarını yönetmeyi ve kullanıcının daha fazla memnun kalmasını sağlamaktadır.
Web sitelerinin birçoğunun API (Application Programming Interface) yani Uygulama Programlama Arayüzü üzerinde kurulduğu görülmektedir. API’ler, kullanıcıların istekleri doğrultusunda, veritabanları ile istek bağlantıları kurmaktadır. API sonuçlarını önbelleğe alarak, kullanıcı tarafına döndürülmesi, veritabanı yüklerini azaltmak da, hızın ve performansın artmasını sağlamaktadır.
Cloud (Bulut) sistemlerinde barındırılan uygulamaların, bir takım verilere erişim için kuruma ait veritabanına ulaşması gerekmektedir. Kuruma ait verilerin, bulut sistemlerinde önbelleğe alınması ise veri akışının genel performansını arttırmaktadır.
Bir web sitesini ziyaret eden kullanıcı için, içerikler sunulurken, görüntülerin, HTML belgelerinin, videoların ve diğer tüm verilerin önbelleğe alınması ile disklerin okunması ve sunucuların yüklerinin azaltılması mümkün olmaktadır. Hem sunucu hem de kullanıcı taraflı önbellekleme işlemlerinde, web sunucu yanıtları tutularak, sunucuların gecikmelerinin engellenmesi için Proxy ’lerden yararlanılmaktadır. Kullanıcı taraflı önbellek işlemlerinde ise daha önce ziyaret edilen web sayfaları önbelleğe aktarılmaktadır.
Verilere ya da veri gruplarına bellekten erişim sağlamak, SSD (Katmanlı Hal Sürücüsü) üzerinden ve disklerden veri erişimine göre daha hızlı yapılmaktadır. Bu sistem, bağımsız şekilde işleyen veritabanı olarak, bellek içerisindeki anahtarlama / değerleme depolarını kullanarak gerçekleştirilmektedir. Sistem ile önbellek içerisinde yer alan veriler kullanılırken hızın artması, maliyetlerin düşürülmesi, verimliliğin yükseltilmesi sağlanmaktadır.
Daha sık erişim sağlanan verilerin, kaynak veritabanlarından otomatik şekilde önbelleğe alınması, entegre önbellek ile mümkün olmaktadır. Veritabanına gelen taleplerin yanıtlanması için entegre önbellek kullanılır ve istek gecikmelerinin önüne geçilir. Veritabanı CPU ve bellek kullanımları minimum seviyeye çekilerek, veritabanı performansı yükseltilir.
.TR öncelikli kayıtlar için son gün, 7 Ağustos 2024 olarak güncellenmiştir. Bunun akabinde süreçle ilgili…
WooCommerce, WordPress üzerine kurulu güçlü ve açık kaynaklı bir e-ticaret platformudur. Doğru WooCommerce eklentileriyle çevrimiçi…
Yedekleme, WordPress web sitenizi siber saldırılardan ve kritik hatalardan korumanın önemli bir parçasıdır. Bu yüzden…
Her WordPress web sitesi aşağıdaki giriş URL'lerine sahiptir: websiteniz.com/wp-admin websiteniz.com/wp-login Giriş yolları tüm web siteleri…
İnternette gezinirken büyük çoğunuz, "this site can’t provide a secure connection (bu site güvenli bağlantı…
ChatGPT'nin Kasım 2022'de piyasaya sürülmesinden bu yana teknoloji gündeminde en çok konuşulan şey yapay zeka…